Skip to content

Commit

Permalink
ver. 0.4.27
Browse files Browse the repository at this point in the history
  • Loading branch information
JEJodesty committed Aug 26, 2021
2 parents 7feecf8 + 12e2b15 commit d7b7806
Show file tree
Hide file tree
Showing 94 changed files with 1,416 additions and 1,431 deletions.
41 changes: 37 additions & 4 deletions .circleci/config.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,6 @@ version: 2.1

orbs:
python: circleci/python@0.3.2

jobs:
test:
executor: python/default
Expand All @@ -11,18 +10,52 @@ jobs:
- python/load-cache
- python/install-deps
- python/save-cache
- run: pip install cadcad
- run: pip install cadCAD==0.4.23
- run:
command: python testing/tests/a_b_tests/multi_model_row_count_0_4_23.py
name: Multi Model Row Count (ver. 0.4.23)
- run: pip install -r requirements.txt --force-reinstall
- run: python setup.py bdist_wheel
- run: pip install dist/*.whl --force-reinstall
- run:
command: python testing/tests/multi_model_row_count.py
name: Multi Model Row Count
- run:
command: python testing/tests/param_sweep.py
name: Parameter sweep
- run:
command: python testing/tests/policy_aggregation.py
name: Policy Aggregation
- run:
command: python -m unittest discover -s testing/tests -p "*_test.py"
name: Test Suite
command: python testing/tests/timestep1psub0.py
name: Timestep equals 1 instead of 0 for 1st PSUB
- run:
command: python testing/tests/runs_not_zero.py
name: Value Error thrown when Runs < 1
- run:
command: python testing/tests/run1psub0.py
name: Run Starts at 1 for PSUB 0
# - run:
# command: python -m unittest discover -s testing/tests -p "*_test.py"
# name: Test Suite
jupyterServerTest:
docker:
- image: cimg/python:3.9.5
steps:
- checkout
- python/load-cache
- run: python --version
- run: pip install --upgrade pip
- run: pip install jupyter
- python/save-cache
- run: python setup.py bdist_wheel
- run: pip install dist/*.whl --force-reinstall
- run:
command: python testing/tests/import_cadCAD_test.py
name: cadCAD importable by Jupyter Server

workflows:
main:
jobs:
- test
- jupyterServerTest
26 changes: 17 additions & 9 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -9,25 +9,33 @@
*.egg-info
*.sqlite3
*.pyc
*venv
*external_data
*sys_exec.py
*/__pycache__
*.DS_Store
*notes.*
*announcement.md
*dist.py
*/poc

__pycache__
Pipfile
Pipfile.lock

build
results
result
notebooks
client_work
monkeytype
*venv
*external_data
venv
notes.*
announcement.md
testing/tests/a_b_tests/venv_0_4_23


simulations/tickets
simulations/validation
*poc/
*poc_configs/

*notes.*
*announcement.md
*dist.py
simulations/poc/local/
simulations/regression_tests/poc
simulations/regression_tests/poc_configs
31 changes: 31 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,36 @@
# Changelog:

### July 7, 2021
#### New Features:
* **ver. ≥ `0.4.27`:**
* ##### [Experiments](documentation#experiments)
* ##### [System Model Configurations]
* Configurations (`cadCAD.utils.Configuration`'s) as are no longer a part of the `cadCAD` module
(as `cadCAD.configs`) and are now accessed via the `configs` member of `cadCAD.configuration.Experiment`.
[Example:](documentation#experiments) `cadCAD.configuration.Experiment().configs`
* `cadCAD.configuration.Experiment` is unique representation of an experiment of one or more configured System
Models. An `Experiment`'s `append_model` method stores multiple system model `Configuration`'s for simulation
execution.
* The `Experiment`'s `append_model` method requires a `model_id` parameter that is auto-created as `'sys_model_#'`.
* **Requirements:**
* Users must use different `model_id`'s when appending multiple System Model Configurations.
* Users can no longer use the `config_list` method of `cadCAD.configuration.Experiment`
* **Backwards Compatibility:** The `append_model` method of `cadCAD.configuration.Experiment` can also be used as
the `append_configs` method.
* ##### [Upgrade Guide:](documentation#cadCAD-v0.4.27-Model-Upgrade-Guide.md) specific to feature changes / additions
* **Fixes:**
* [#248](https://github.com/cadCAD-org/cadCAD/issues/248)
* The previous release was returning partial results. An A/B test for this has been included and will be for
future releases
* [#242](https://github.com/cadCAD-org/cadCAD/issues/242)
* Parallelized simulations enabled with the re-inclusion of `ProcessPool`.
* [#257](https://github.com/cadCAD-org/cadCAD/issues/257)
* ValueError for runs accepted by the `cadCAD.configuration.Experiment().append_model` via the `sim_configs` no
longer gives mis-leading error message if catching a non-related ValueError
* [#252](https://github.com/cadCAD-org/cadCAD/issues/252)
* Jupyter lab and Jupyter notebook recognises cadCAD module


### September 22, 2020
##### [Multi - System Model Execution](https://github.com/cadCAD-org/cadCAD/blob/master/documentation/Simulation_Execution.md#multiple-simulation-execution)
* **ver. ≥ `0.4.23`:**
Expand Down
22 changes: 5 additions & 17 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
/ ___/ __` / __ / / / /| | / / / /
/ /__/ /_/ / /_/ / /___/ ___ |/ /_/ /
\___/\__,_/\__,_/\____/_/ |_/_____/
by cadCAD ver. 0.4.23
by cadCAD ver. 0.4.27
======================================
Complex Adaptive Dynamics
o i e
Expand All @@ -20,8 +20,7 @@ through simulation, with support for Monte Carlo methods, A/B testing and parame

# Getting Started


#### Change Log: [ver. 0.4.23](CHANGELOG.md)
#### Change Log: [ver. 0.4.27](CHANGELOG.md)

[Previous Stable Release (No Longer Supported)](https://github.com/cadCAD-org/cadCAD/tree/b9cc6b2e4af15d6361d60d6ec059246ab8fbf6da)

Expand All @@ -48,9 +47,9 @@ $
## 1. Installation:
Requires [>= Python 3.6](https://www.python.org/downloads/)

**Option A: Install Using [pip](https://pypi.org/project/cadCAD/)**
**Option A: Install Using **[pip](https://test.pypi.org/project/cadCAD/0.4.27/)**
```bash
$ pip3 install cadCAD
$ pip3 install -i https://test.pypi.org/simple/ cadCAD==0.4.27
```

**Option B:** Build From Source
Expand All @@ -60,17 +59,6 @@ $ python3 setup.py sdist bdist_wheel
$ pip3 install dist/*.whl
```

**Option C: Using [Nix](https://nixos.org/nix/)**
1. Run `curl -L https://nixos.org/nix/install | sh` or install Nix via system package manager
2. Run `nix-shell` to enter into a development environment, `nix-build` to build project from source, and
`nix-env -if default.nix` to install

The above steps will enter you into a Nix development environment, with all package requirements for development of and
with cadCAD.

This works with just about all Unix systems as well as MacOS, for pure reproducible builds that don't
affect your local environment.

## 2. Documentation:
* [Simulation Configuration](documentation/README.md)
* [Simulation Execution](documentation/Simulation_Execution.md)
Expand All @@ -81,4 +69,4 @@ affect your local environment.
## 3. Connect:
Find other cadCAD users at our [Discourse](https://community.cadcad.org/). We are a small but rapidly growing community.

## 4. [Contribute!](CONTRIBUTING.md)
## 4. [Contribute!](CONTRIBUTING.md)
3 changes: 1 addition & 2 deletions cadCAD/__init__.py
Original file line number Diff line number Diff line change
@@ -1,8 +1,7 @@
import os, dill

name = "cadCAD"
configs = []
global experiment_count
version = "0.4.27"

if os.name == 'nt':
dill.settings['recurse'] = True
Expand Down
Loading

0 comments on commit d7b7806

Please sign in to comment.