Skip to content

Commit

Permalink
Merge pull request #31 from MSDLLCpapers/main
Browse files Browse the repository at this point in the history
Update app branch with main
  • Loading branch information
kstone40 authored Aug 18, 2024
2 parents 7be24b4 + 325a30d commit e12cdf3
Show file tree
Hide file tree
Showing 105 changed files with 21,722 additions and 3,545 deletions.
3 changes: 2 additions & 1 deletion .coveragerc
Original file line number Diff line number Diff line change
Expand Up @@ -3,4 +3,5 @@ omit =
obsidian/dash/*
obsidian/tests/*
obsidian/experiment/benchmark/*
obsidian/plotting/branding.py
obsidian/plotting/branding.py
app.py
15 changes: 9 additions & 6 deletions .flake8
Original file line number Diff line number Diff line change
@@ -1,21 +1,24 @@
[flake8]

# VScode adds blank whitespaces
extend-ignore = W293
# More manageable for desktop editing
max-line-length = 140
per-file-ignores =

per-file-ignores =
# Imported but unused / Unable to detect names
__init__.py: F401, F403
obsidian/dash/*: F401, F403

# Often creating variables but not accessing them in testing
obsidian/tests/*: F841
# Often importing and creating unaccessed objects during testing
obsidian/tests/*: F401, F841

# No good way around comparing types for recursive state-dict comparison
obsidian/tests/utils.py: E721

exclude =
projects/
demo/
logs/
dev/
source/
docs/
build/
docs/
21 changes: 21 additions & 0 deletions .github/workflows/codecov.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
name: CI

on: [push, pull_request]

jobs:
build:
runs-on: ubuntu-latest
name: Pytest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-python@v2
with:
python-version: '3.10'
- name: Install requirements
run: pip install obsidian-apo[dev]
- name: Run tests and collect coverage
run: pytest --cov=.
- name: Upload coverage reports to Codecov with GitHub Action
uses: codecov/[email protected]
env:
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}
27 changes: 27 additions & 0 deletions .github/workflows/documentation.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
name: documentation

on: [push, pull_request, workflow_dispatch]

permissions:
contents: write

jobs:
docs:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-python@v5
- name: Install dependencies
run: |
pip install obsidian-apo[docs]
- name: Sphinx build
run: |
sphinx-build docs _build
- name: Deploy to GitHub Pages
uses: peaceiris/actions-gh-pages@v3
if: ${{ github.event_name == 'push' && github.ref == 'refs/heads/main' }}
with:
publish_branch: gh-pages
github_token: ${{ secrets.GITHUB_TOKEN }}
publish_dir: _build/
force_orphan: true
3 changes: 0 additions & 3 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -85,9 +85,6 @@ instance/
# Scrapy stuff:
.scrapy

# Sphinx documentation
docs/_build/

# PyBuilder
.pybuilder/
target/
Expand Down
37 changes: 0 additions & 37 deletions .readthedocs.yaml

This file was deleted.

47 changes: 47 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,52 @@
# Changelog

## [0.8.0]
### Added
- Major improvements to testing and numerous small bug fixes to improve code robustness
- Code coverage > 90%
- New method for asserting equivalence of state_dicts during serialization

### Modified
- Objective PyTests separated
- Constraint PyTests separated

## [0.7.13]
### Added
- Campaign.Explainer now added to PyTests
- Docstrings and typing to Explainer methods
- Campaign.out property to dynamically capture measured responses "y" or objectives as appropriate
- Campaign.evaluate method to map optimizer.evaluate method
- DNN to PyTests

### Modified
- Fixed SHAP explainer analysis and visualization functions
- Changed SHAP visualization colors to use obsidian branding
- Moved sensitivity method from campaign.analysis to campaign.explainer
- Moved Explainer testing from optimizer pytests to campaign pytests
- Generalized plotting function MOO_results and renamed optim_progress
- Campaign analysis and plotting methods fixed for
- Greatly increased the number of samples used for DNNPosterior, increasing the stability of posterior predictions

### Removed
- Removed code chunks regarding unused optional inputs to PDP ICE function imported from SHAP GitHub

## [0.7.12]
### Added
- More informative docstrings for optimizer.bayesian, optimizer.predict, to explain choices of surrogate models and aq_funcs

### Modified
- Renamed aq_func hyperparmeter "Xi_f" to "inflate"
- Moved default aq_func choices for single/multi into aq_defaults of acquisition.config
- Fixed and improved campaign analysis methods

## [0.7.11]
### Added
- Documentation improvements

### Modified
- Naming conventions for modules (config, utils, base)
- Import order convention for modules

## [0.7.10]
### Added
- First (working) release on PyPI
Expand Down
Loading

0 comments on commit e12cdf3

Please sign in to comment.