Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
41 commits
Select commit Hold shift + click to select a range
5a0131f
Not ready to do a PR
ramosv Nov 11, 2024
423e6ed
Finished adding DPMON to pipeline
Nov 16, 2024
d33810a
added to gitignore
Nov 16, 2024
2e64ecb
BioNeuralNet Framework
ramosv Nov 26, 2024
366bbb4
Tested both wgcna and smccnet and all test passed
ramosv Dec 12, 2024
d17ff07
Removed pytest-cache and added to gitingore
ramosv Dec 12, 2024
941e3bf
Analysis Component Addded to Framework: Allowing for feature selectio…
ramosv Dec 15, 2024
dd45999
Analysis Component Addded to Framework: Allowing for feature selectio…
ramosv Dec 15, 2024
6d77a5f
Implemented DPMON, cleaned up old files, updted documentation and doc…
ramosv Dec 17, 2024
a587a69
Updated github actions file python-app.yml to install withouterrors
ramosv Dec 17, 2024
cf31322
Updated github actions file python-app.yml again
ramosv Dec 17, 2024
50b20b2
Updated github actions - simplified to only ubuntu and python 3.8
ramosv Dec 17, 2024
b58ed08
Updated github actions - test2
ramosv Dec 17, 2024
ac875d8
Updated github actions - test3
ramosv Dec 17, 2024
04b6060
Updated github actions - test4 - Update actions to install R
ramosv Dec 17, 2024
a71c39f
Test SHOULD pass also github actions should build without issues
ramosv Dec 17, 2024
6418dbe
THis time test should pass, i added a file to the test to activate vi…
ramosv Dec 17, 2024
e0989b0
pls work
ramosv Dec 17, 2024
59710f9
Updated code so that auto doc generation using sphinx works without i…
ramosv Dec 19, 2024
bea3947
Removed dependency on output_dir from most classes
ramosv Dec 19, 2024
d5c614b
Fixed github workflow to install package locally
ramosv Dec 19, 2024
bcdd419
Beta Release Clean Up
ramosv Dec 20, 2024
471ff91
Pushing changes and issues addressed. Testing with mohamed as well
ramosv Dec 22, 2024
40293be
Testing with mohamed as well
ramosv Dec 22, 2024
afe4f20
Update documentation
ramosv Dec 23, 2024
6c3a2dd
Updated PageRank to use columns as features rather than rows.
abdelhafizm Dec 24, 2024
f4e4f9e
Removed check for less than 2 nodes when calculating correlation; not…
abdelhafizm Dec 24, 2024
513cc30
Added check to skip saving if output_dir not specified.
abdelhafizm Dec 24, 2024
5d78e56
Updated pagerank_test to comply with feature columns instead of rows.
abdelhafizm Dec 24, 2024
d340410
Updated pagerank_test to account for output_dir check.
abdelhafizm Dec 24, 2024
fdb0035
Removed single node test not necessary.
abdelhafizm Dec 24, 2024
3216f1c
Removed single node test not necessary.
abdelhafizm Dec 24, 2024
3c2000c
backup
ramosv Dec 28, 2024
b9f28e2
Merge pull request #29 from UCD-BDLab/beta_release_pagerank_fixes
ramosv Jan 7, 2025
56d61f0
Updating file location
ramosv Jan 8, 2025
310efe8
Changes
Jan 9, 2025
2e39a20
Merge pull request #31 from UCD-BDLab/testing_example_3
ramosv Jan 18, 2025
776651b
Updates to the beta-release-cleanup branch
ramosv Jan 20, 2025
d542e6f
Added Pre commincs and removed sensitive data
ramosv Jan 20, 2025
5630eea
Mohamed and I reviewd the last few errors
ramosv Jan 20, 2025
e30716b
Fix pytest error on pre-commit
ramosv Jan 20, 2025
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
Binary file added .DS_Store
Binary file not shown.
15 changes: 0 additions & 15 deletions .gitattributes

This file was deleted.

47 changes: 47 additions & 0 deletions .github/workflows/docs.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,47 @@
name: Build and Deploy Documentation

on:
push:
branches: [main]
pull_request:
branches: [main]

jobs:
build-deploy-docs:
runs-on: ubuntu-latest

steps:
- name: Checkout Repository
uses: actions/checkout@v3
with:
fetch-depth: 0

- name: Set up Python 3.10
uses: actions/setup-python@v4
with:
python-version: "3.10"
check-latest: true

- name: Install Dependencies
run: |
python -m pip install --upgrade pip
pip install -r requirements.txt
pip install -r requirements-dev.txt
pip install torch
pip install torch_geometric
shell: bash

- name: Verify Documentation Directory
run: test -d docs/source/ || { echo "Docs source directory missing"; exit 1; }

- name: Build Documentation
run: |
mkdir -p docs/build/html
sphinx-build -b html docs/source/ docs/build/html/
shell: bash

- name: Deploy to GitHub Pages
uses: peaceiris/actions-gh-pages@v3
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
publish_dir: ./docs/build/html
35 changes: 35 additions & 0 deletions .github/workflows/pre-commit.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
name: Pre-Commit Checks

on:
push:
branches:
- "**"
pull_request:

jobs:
pre-commit:
runs-on: ubuntu-latest

steps:
- name: Checkout code
uses: actions/checkout@v3

- name: Set up Python
uses: actions/setup-python@v4
with:
python-version: "3.10"

- name: Cache pip dependencies
uses: actions/cache@v3
with:
path: ~/.cache/pip
key: ${{ runner.os }}-pip-${{ hashFiles('**/requirements.txt', '**/requirements-dev.txt') }}
restore-keys: ${{ runner.os }}-pip-

- name: Install Pre-Commit and Dependencies
run: |
python -m pip install --upgrade pip
pip install pre-commit

- name: Run Pre-Commit Checks
run: pre-commit run --all-files --show-diff-on-failure
69 changes: 69 additions & 0 deletions .github/workflows/python-app.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,69 @@
name: BioNeuralNet CI

on:
push:
branches: [main]
pull_request:
branches: [main]

jobs:
build:
strategy:
matrix:
os: [ubuntu-latest, macos-latest, windows-latest]
python-version: ["3.10", "3.11"]

runs-on: ${{ matrix.os }}

steps:
- name: Checkout repository
uses: actions/checkout@v3

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

- name: Cache pip dependencies
uses: actions/cache@v3
with:
path: ~/.cache/pip
key: ${{ runner.os }}-pip-${{ hashFiles('**/requirements.txt', '**/requirements-dev.txt') }}
restore-keys: ${{ runner.os }}-pip-

- name: Install Python dependencies
run: |
python -m pip install --upgrade pip
pip install -r requirements.txt
pip install -r requirements-dev.txt
pip install torch
pip install torch_geometric
shell: bash

- name: Install R
uses: r-lib/actions/setup-r@v2
with:
r-version: "latest"

- name: Install R packages
run: |
Rscript -e "if (!requireNamespace('BiocManager', quietly = TRUE)) install.packages('BiocManager', repos='https://cran.r-project.org')"
Rscript -e "install.packages(c('dplyr', 'jsonlite'), repos='https://cran.r-project.org')"
Rscript -e "BiocManager::install(c('impute', 'preprocessCore', 'GO.db', 'AnnotationDbi'), update=FALSE, ask=FALSE)"
Rscript -e "install.packages('SmCCNet', repos='https://cran.r-project.org')"
Rscript -e "install.packages('WGCNA', repos='https://cran.r-project.org')"
shell: bash

- name: Run tests with pytest
run: |
find . -name ".coverage*" -delete
pytest --cov=bioneuralnet --cov-report=xml tests/

- name: Upload coverage to Codecov
uses: codecov/codecov-action@v3
with:
token: ${{ secrets.CODECOV_TOKEN }}
files: ./coverage.xml
flags: unittests
name: codecov-umbrella
69 changes: 68 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
@@ -1,2 +1,69 @@
# Python
*.pyc
__pycache__/
.venv/
*.pyo
*.pyd
env/
venv/
ENV/
env.bak/
venv.bak/
.pytest_cache
release.md
bioneuralnet.egg-info
/dist/
/build/
/docker_files/
.mypy_cache

# Block sensitive file types globally
*.csv
*.RData


# Sphinx documentation build
docs/build/

# Virtual environment
venv/
ENV/
env/
env.bak/
venv.bak/
.venv/
bioneuralnet-env/

# IDE and editor directories
.vscode/
.idea/
*.sublime-project
*.sublime-workspace

# Logs
*.log

# OS generated files
.DS_Store
Thumbs.db

# Coverage reports
htmlcov/
.coverage
.coverage.*
.cache
nosetests.xml
coverage.xml
*.cover
*.py,cover
.hypothesis/

# Test reports
test_report/

# Other
*.bak
*.tmp
test_output/
dpmon_output_*
lib/
.DS_Store
48 changes: 48 additions & 0 deletions .pre-commit-config.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
repos:
- repo: https://github.com/pre-commit/pre-commit-hooks
rev: v4.3.0
hooks:
- id: trailing-whitespace
- id: end-of-file-fixer
- id: check-yaml
- id: check-added-large-files

- repo: https://github.com/psf/black
rev: 24.10.0
hooks:
- id: black
name: Format Python code with Black
language_version: python3

- repo: https://github.com/pre-commit/mirrors-mypy
rev: v1.14.1
hooks:
- id: mypy
name: Static type checking with MyPy
args: [--ignore-missing-imports]

- repo: local
hooks:
- id: remove-pyc-and-pycache
name: Remove .pyc files and __pycache__ directories
entry: bash -c "find . \( -path './.venv' -o -path './docs' -o -path './node_modules' \) -prune -o -type f -name '*.pyc' -exec rm -f {} + -o -type d -name '__pycache__' -exec rm -rf {} +"
language: system
stages: [pre-commit]

- id: clean-coverage-files
name: Remove stale .coverage files
entry: bash -c "find . -name '.coverage*' -delete"
language: system
stages: [pre-commit]

- id: check-forbidden-files
name: Prevent adding forbidden file types
entry: bash -c "if git diff --cached --name-only | grep -E '\\.csv$|\\.RData$'; then echo 'Forbidden file types detected!'; exit 1; fi"
language: system
types: [file]

- id: run-tests
name: Run Tests with Pytest
entry: pytest --cov=bioneuralnet --cov-report=term-missing
language: system
types: [python]
Loading
Loading