Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

analysis: update docs + add validation analysis #11

Open
wants to merge 5 commits into
base: issue-5
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from 1 commit
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
85 changes: 85 additions & 0 deletions .github/ISSUE_TEMPLATE/bug-report.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,85 @@
name: Bug Report
description: Report a bug.
labels: ["bug"]
body:
- type: textarea
attributes:
label: Describe the bug
description: Provide a clear and concise description of what the bug is.
validations:
required: true
- type: textarea
attributes:
label: Steps to reproduce
description: Provide detailed steps to replicate the bug.
placeholder: |
1. In this environment...
2. With this config...
3. Run '...'
4. See error...
validations:
required: true
- type: textarea
attributes:
label: Expected behavior
description: What did you expect to happen?
validations:
required: true
- type: textarea
attributes:
label: Current behavior
description: |
What actually happened?

Include full errors, stack traces, and/or relevant logs.
validations:
required: true
- type: textarea
attributes:
label: Possible reason(s)
description: Provide any insights into what might be causing the issue.
validations:
required: false
- type: textarea
attributes:
label: Suggested fix
description: Provide any suggestions on how to resolve the bug.
validations:
required: false
- type: textarea
attributes:
label: Branch, commit, and/or version
description: Provide the branch, commit, and/or version you're using.
placeholder: |
branch: issue-1
commit: abc123d
validations:
required: true
- type: textarea
attributes:
label: Screenshots
description: If applicable, add screenshots with descriptions to help explain your problem.
validations:
required: false
- type: textarea
attributes:
label: Environment details
description: Provide environment details (OS name and version, etc).
validations:
required: true
- type: textarea
attributes:
label: Additional details
description: Provide any other additional details about the problem.
validations:
required: false
- type: dropdown
attributes:
label: Contribution
description: Can you contribute to the development of this feature?
options:
- "Yes, I can create a PR for this fix."
- "Yes, but I can only provide ideas and feedback."
- "No, I cannot contribute."
validations:
required: true
60 changes: 60 additions & 0 deletions .github/ISSUE_TEMPLATE/feature-request.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,60 @@
name: Feature Request
description: Suggest an idea for this project.
labels: ["enhancement"]
body:
- type: textarea
attributes:
label: Feature description
description: Provide a clear and concise description of what you want to happen.
validations:
required: true
- type: textarea
attributes:
label: Use case
description: |
Why do you need this feature? For example: "I'm always frustrated when..."
validations:
required: true
- type: textarea
attributes:
label: Proposed solution
description: Provide proposed solution.
validations:
required: false
- type: textarea
attributes:
label: Alternatives considered
description: Describe any alternative solutions you've considered.
validations:
required: false
- type: textarea
attributes:
label: Implementation details
description: Provide any technical details on how the feature might be implemented.
validations:
required: false
- type: textarea
attributes:
label: Potential Impact
description: |
Discuss any potential impacts of this feature on existing functionality or performance, if known.
Will this feature cause breaking changes?
What challenges might arise?
validations:
required: false
- type: textarea
attributes:
label: Additional context
description: Provide any other context or screenshots about the feature.
validations:
required: false
- type: dropdown
attributes:
label: Contribution
description: Can you contribute to the development of this feature?
options:
- "Yes, I can create a PR for this feature."
- "Yes, but I can only provide ideas and feedback."
- "No, I cannot contribute."
validations:
required: true
40 changes: 40 additions & 0 deletions .github/workflows/checks.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
name: checks
on: [push, pull_request]
jobs:
# test:
# name: test py${{ matrix.python-version }}
# runs-on: ubuntu-latest
# strategy:
# matrix:
# python-version: ["3.10", "3.11", "3.12"]
# steps:
# - uses: actions/checkout@v3

# - name: Set up Python
# uses: actions/setup-python@v4
# with:
# python-version: ${{ matrix.python-version }}

# - name: Install dependencies
# run: |
# python3 -m pip install ".[tests]"

# - name: Run tests
# run: python3 -m pytest

lint:
name: lint
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3

- name: Setup Python
uses: actions/setup-python@v4
with:
python-version: "3.12"

- name: Install dependencies
run: python3 -m pip install ".[dev]"

- name: Check style
run: python3 -m ruff check . && python3 -m ruff format --check .
23 changes: 23 additions & 0 deletions .github/workflows/pr-priority-label.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
name: Pull Request Has Priority Label
on:
pull_request:
types: [opened, labeled, unlabeled, synchronize]
jobs:
pr-priority-label:
runs-on: ubuntu-latest
permissions:
issues: write
pull-requests: write
outputs:
status: ${{ steps.check-labels.outputs.status }}
steps:
- id: check-labels
uses: mheap/github-action-required-labels@v5
with:
mode: exactly
count: 1
labels: "priority:*"
use_regex: true
add_comment: true
message: "PRs require a priority label. Please add one."
exit_type: failure
50 changes: 50 additions & 0 deletions .github/workflows/release.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,50 @@
# https://packaging.python.org/en/latest/guides/publishing-package-distribution-releases-using-github-actions-ci-cd-workflows/
name: Publish Python distribution to PyPI

on:
release:
types: [created]

jobs:
build:
name: Build distribution
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v4
- name: Set up Python
uses: actions/setup-python@v4
with:
python-version: "3.x"
- name: Install pypa/build
run: >-
python3 -m
pip install
build
--user
- name: Build a binary wheel and a source tarball
run: python3 -m build
- name: Store the distribution packages
uses: actions/upload-artifact@v3
with:
name: python-package-distributions
path: dist/
publish-to-pypi:
name: >-
Publish Python distribution to PyPI
needs:
- build
runs-on: ubuntu-latest
environment:
name: pypi
url: https://pypi.org/p/gks-clinvar
permissions:
id-token: write # IMPORTANT: mandatory for trusted publishing
steps:
- name: Download all the dists
uses: actions/download-artifact@v3
with:
name: python-package-distributions
path: dist/
- name: Publish distribution to PyPI
uses: pypa/gh-action-pypi-publish@release/v1
40 changes: 16 additions & 24 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,3 +1,9 @@
# Ignore xlsx temp file
\~*

# Ignore system files
.DS_Store

# Byte-compiled / optimized / DLL files
__pycache__/
*.py[cod]
Expand Down Expand Up @@ -92,24 +98,9 @@ ipython_config.py
# However, in case of collaboration, if having platform-specific dependencies or dependencies
# having no cross-platform support, pipenv may install dependencies that don't work, or not
# install all needed dependencies.
#Pipfile.lock

# poetry
# Similar to Pipfile.lock, it is generally recommended to include poetry.lock in version control.
# This is especially recommended for binary packages to ensure reproducibility, and is more
# commonly ignored for libraries.
# https://python-poetry.org/docs/basic-usage/#commit-your-poetrylock-file-to-version-control
#poetry.lock

# pdm
# Similar to Pipfile.lock, it is generally recommended to include pdm.lock in version control.
#pdm.lock
# pdm stores project-wide configurations in .pdm.toml, but it is recommended to not include it
# in version control.
# https://pdm.fming.dev/#use-with-ide
.pdm.toml

# PEP 582; used by e.g. github.com/David-OConnor/pyflow and github.com/pdm-project/pdm
Pipfile.lock

# PEP 582; used by e.g. github.com/David-OConnor/pyflow
__pypackages__/

# Celery stuff
Expand Down Expand Up @@ -152,9 +143,10 @@ dmypy.json
# Cython debug symbols
cython_debug/

# PyCharm
# JetBrains specific template is maintained in a separate JetBrains.gitignore that can
# be found at https://github.com/github/gitignore/blob/main/Global/JetBrains.gitignore
# and can be added to the global gitignore or merged into this file. For a more nuclear
# option (not recommended) you can uncomment the following to ignore the entire idea folder.
#.idea/
# allow pytest override with pytest.ini
pytest.ini

# IDE materials
.idea/
.vim/
*.swp
14 changes: 14 additions & 0 deletions .pre-commit-config.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
repos:
- repo: https://github.com/pre-commit/pre-commit-hooks
rev: v1.4.0
hooks:
- id: check-added-large-files
- id: detect-private-key
- id: trailing-whitespace
- id: end-of-file-fixer
- repo: https://github.com/astral-sh/ruff-pre-commit
rev: v0.2.0 # ruff version
hooks:
- id: ruff-format
- id: ruff
args: [ --fix, --exit-non-zero-on-fix ]
Loading
Loading