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

ver. 0.4.27 #292

Merged
merged 115 commits into from
Aug 26, 2021
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
115 commits
Select commit Hold shift + click to select a range
bab0368
Add version to execution logs
tylerdmace Nov 6, 2020
daff871
Merge pull request #212 from cadCAD-org/tdm-version-logging
JEJodesty Jan 27, 2021
c1bbfb4
para hot_fix
JEJodesty Apr 6, 2021
8270c24
transition
JEJodesty Apr 6, 2021
c453dc9
added proccess count
JEJodesty Apr 7, 2021
40da3c3
added process count
JEJodesty Apr 7, 2021
e37b2d5
added process count
JEJodesty Apr 7, 2021
666f531
converted to process pool
JEJodesty Apr 7, 2021
b579c13
converted to process pool
JEJodesty Apr 7, 2021
7ee3a5a
converted to process pool
JEJodesty Apr 7, 2021
7fcd75b
Merge pull request #261 from cadCAD-org/multi
JEJodesty Apr 7, 2021
c336b7f
rebuild
JEJodesty Apr 15, 2021
5b6814f
multiprocessing
JEJodesty Apr 22, 2021
3c628af
update docs
JEJodesty Apr 28, 2021
778e486
removed additional sim report
JEJodesty May 3, 2021
787fdba
fix run misreport for subsequent models
JEJodesty May 4, 2021
e2b43ee
Merge pull request #262 from cadCAD-org/multi_os
JEJodesty May 4, 2021
c2d4cb0
added df comparison integration tests
JEJodesty May 6, 2021
41bf9b3
Merge pull request #263 from cadCAD-org/multi_os
JEJodesty May 6, 2021
ae3565d
correcting test path
JEJodesty May 6, 2021
13e5182
Merge pull request #264 from cadCAD-org/multi_os
JEJodesty May 6, 2021
ba5124d
added pickling protocol 4 for python ver. 3.6 and kept protolcol 5 fo…
JEJodesty May 21, 2021
ec08723
updated changelog
JEJodesty May 21, 2021
92407da
Merge pull request #266 from cadCAD-org/multi_os
JEJodesty May 21, 2021
2917057
Enable backwards compatibility for using the 'variables' key in psubs…
JEJodesty May 21, 2021
7c11a8a
added wheel to requirements.txt
JEJodesty May 21, 2021
d1488db
moved expected results to project rrot for circleci
JEJodesty May 21, 2021
ce78d9e
Merge pull request #267 from cadCAD-org/multi_os
JEJodesty May 21, 2021
8efa973
pre-release
JEJodesty May 25, 2021
ad790a2
documentation update
JEJodesty May 26, 2021
d8e27e1
test 248, 250, 257 & updated CHANGELOG
JEJodesty Jun 2, 2021
f9747a4
test 248, 250, 257, run1@psub0
JEJodesty Jun 2, 2021
26f526f
ci fix tests
JEJodesty Jun 2, 2021
9a6fc92
Merge pull request #269 from cadCAD-org/multi_os
JEJodesty Jun 2, 2021
a058834
0.4.25
JEJodesty Jun 9, 2021
b3c52d7
removed remote_dict
JEJodesty Jun 9, 2021
935b803
removed remote_dict
JEJodesty Jun 9, 2021
b68b0fb
Merge pull request #270 from cadCAD-org/multi_os
JEJodesty Jun 9, 2021
43a9204
ci check
JEJodesty Jun 11, 2021
203e325
ci update: avtivated a/b test to fail
JEJodesty Jun 11, 2021
7f12ea9
ci update: avtivated a/b test to fail
JEJodesty Jun 11, 2021
3884981
ci update: avtivated a/b test to fail
JEJodesty Jun 11, 2021
1df8c4d
ci update: avtivated a/b test to fail
JEJodesty Jun 11, 2021
df2bfe6
ci update: to pass
JEJodesty Jun 11, 2021
41e843e
ci: added record count generation from previous version
JEJodesty Jun 11, 2021
f422288
ci: added record count generation from previous version (indented)
JEJodesty Jun 11, 2021
2c07caf
ci: added record count generation from previous version (comit script)
JEJodesty Jun 11, 2021
3fe8d91
Jupyter server test
JEJodesty Jun 15, 2021
60c26aa
Jupyter server test
JEJodesty Jun 15, 2021
0b35903
Jupyter server test
JEJodesty Jun 15, 2021
bde9af5
Jupyter server test
JEJodesty Jun 15, 2021
9d14310
Jupyter server test: removed dependency installs
JEJodesty Jun 15, 2021
13f9e5d
jupyterServerTest: pip upgrade
JEJodesty Jun 16, 2021
38d24ec
jupyterServerTest: chose python version
JEJodesty Jun 16, 2021
6661ef8
jupyterServerTest: chose python version
JEJodesty Jun 16, 2021
effa325
jupyterServerTest: chose python version
JEJodesty Jun 16, 2021
610d247
jupyterServerTest: chose python version
JEJodesty Jun 16, 2021
771215c
jupyterServerTest: chose python version
JEJodesty Jun 16, 2021
7af347f
jupyterServerTest: chose python version
JEJodesty Jun 16, 2021
00b00e6
Merge pull request #272 from cadCAD-org/multi_os
JEJodesty Jun 20, 2021
9ed44c3
ci debugging numpy installation
JEJodesty Jun 22, 2021
13d3413
ci debugging numpy installation
JEJodesty Jun 22, 2021
43cbd67
ci debugging scipy installation
JEJodesty Jun 22, 2021
c600ff8
ci debugging scipy installation
JEJodesty Jun 22, 2021
174ab07
ci debugging scipy installation
JEJodesty Jun 22, 2021
471a0cf
ci debugging scipy installation
JEJodesty Jun 22, 2021
c0d3074
ci debugging scipy installation
JEJodesty Jun 22, 2021
71b7904
ci debugging scipy installation
JEJodesty Jun 22, 2021
6b7b6c5
ci changed json path
JEJodesty Jun 22, 2021
8ddb4c3
ci changed json path
JEJodesty Jun 22, 2021
f64bef5
ci changed json path
JEJodesty Jun 22, 2021
05b1621
ci changed json path
JEJodesty Jun 22, 2021
5387db4
ci just ls
JEJodesty Jun 22, 2021
0e5ea6e
ci just ls
JEJodesty Jun 22, 2021
d1d1811
ci: changed write filepath
JEJodesty Jun 22, 2021
6436526
ci: changed write filepath
JEJodesty Jun 22, 2021
0d81466
ci: changed write filepath
JEJodesty Jun 22, 2021
99109ab
ci: changed write filepath
JEJodesty Jun 22, 2021
ba0383a
ci: jupyter server can import cadCAD
JEJodesty Jun 22, 2021
6a04369
Merge pull request #273 from cadCAD-org/multi_os
JEJodesty Jun 22, 2021
c049180
Merge pull request #274 from cadCAD-org/dev
JEJodesty Jun 22, 2021
d901b5b
Jupyter server not recognizing cadCAD module
JEJodesty Jun 29, 2021
6bef7b6
Merge pull request #275 from cadCAD-org/multi_os
JEJodesty Jun 29, 2021
1ca325e
Merge pull request #276 from cadCAD-org/dev
JEJodesty Jun 29, 2021
c9ee0b5
doc update
JEJodesty Jul 1, 2021
f09a156
new build, new print_exec_info
JEJodesty Jul 6, 2021
e286727
new build, new print_exec_info
JEJodesty Jul 6, 2021
4aba1be
Merge pull request #278 from cadCAD-org/pre_release
JEJodesty Jul 6, 2021
b341e53
new build, new print_exec_info
JEJodesty Jul 6, 2021
58d9cfd
new print_exec_info
JEJodesty Jul 6, 2021
5195f64
Merge pull request #280 from cadCAD-org/pre_release
JEJodesty Jul 6, 2021
99824dd
Merge pull request #279 from cadCAD-org/dev
JEJodesty Jul 6, 2021
7451503
0.4.27
JEJodesty Jul 7, 2021
c153d3d
0.4.27
JEJodesty Jul 7, 2021
4bdc89f
Merge pull request #281 from cadCAD-org/pre_release
JEJodesty Jul 7, 2021
8cf95f6
0.4.27
JEJodesty Jul 7, 2021
57a32ac
0.4.27
JEJodesty Jul 7, 2021
96488f7
0.4.27
JEJodesty Jul 7, 2021
696e42a
Merge pull request #282 from cadCAD-org/dev
JEJodesty Jul 7, 2021
04051b4
0.4.27: updated readme
JEJodesty Jul 7, 2021
95c91dc
0.4.27: updated readme
JEJodesty Jul 7, 2021
76087af
Merge pull request #283 from cadCAD-org/pre_release
JEJodesty Jul 7, 2021
b282f7b
Merge pull request #284 from cadCAD-org/dev
JEJodesty Jul 7, 2021
95f2bfd
0.4.27: update test
JEJodesty Jul 7, 2021
3eae55a
Merge pull request #285 from cadCAD-org/pre_release
JEJodesty Jul 7, 2021
44661cf
Merge pull request #286 from cadCAD-org/dev
JEJodesty Jul 7, 2021
4a00982
updated changelog
JEJodesty Jul 21, 2021
c62723c
v.0.4.27
JEJodesty Aug 25, 2021
61be97a
v0.4.27: updated requirements.txt
JEJodesty Aug 25, 2021
44d84a8
v0.4.27: rebuilt package
JEJodesty Aug 25, 2021
3d1541a
v0.4.27: updated CHANGELOG
JEJodesty Aug 26, 2021
2e46c03
Merge pull request #289 from cadCAD-org/pre_release
JEJodesty Aug 26, 2021
9fc3b00
edited CONTRIBUTING.md
JEJodesty Aug 26, 2021
f87b8ec
Merge pull request #291 from cadCAD-org/pre_release
JEJodesty Aug 26, 2021
c0da68a
Merge pull request #290 from cadCAD-org/dev
JEJodesty Aug 26, 2021
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
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
36 changes: 22 additions & 14 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,33 +1,41 @@
.idea
.ipynb_checkpoints
.DS_Store
.idea
.eggs
.pytest_cache
.mypy_cache
*.idea
*.vscode
*.ipynb_checkpoints
*.DS_Store
*.eggs
*.pytest_cache
*.mypy_cache
*.csv
*.egg-info
*.ipynb_checkpoints
*.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
notes.*
announcement.md
testing/tests/a_b_tests/venv_0_4_23


simulations/tickets
simulations/validation
simulations/poc/local/
simulations/regression_tests/poc
simulations/regression_tests/poc_configs

*/poc

notes.*
announcement.md
33 changes: 33 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,12 +1,45 @@
# Changelog:

### August 25, 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.
* Removed [Nix](https://nixos.org/)
* ##### [Upgrade Guide:](https://github.com/cadCAD-org/cadCAD/blob/master/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`:**
* **Hot-Fix:** [#203](https://github.com/cadCAD-org/cadCAD/pull/203) (**No Breaking Changes**)
* Multi - System Model simulation results will no longer return truncated results (exclude the results of the last
`cadCAD.configuration.Configuration` appended to `cadCAD.configs`).
* Issue: [#195](https://github.com/cadCAD-org/cadCAD/issues/195)
* Parameter Sweep value `M` (Params) requires up to a maximum of 2 distinct lengths


### August 5, 2020
Expand Down
32 changes: 10 additions & 22 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,13 +20,12 @@ 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)

## 0. Pre-installation Virtual Environments with [`venv`](https://docs.python.org/3/library/venv.html) (Optional):
If you wish to create an easy to use virtual environment to install cadCAD inside of, please use the built in `venv` package.
If you wish to create an easy to use virtual environment to install cadCAD within, please use python's the built in `venv` package.

***Create** a virtual environment:*
```bash
Expand All @@ -46,31 +45,20 @@ $
```

## 1. Installation:
Requires [>= Python 3.6](https://www.python.org/downloads/)
Requires [>= Python 3.6.13](https://www.python.org/downloads/)

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

**Option B:** Build From Source
```
$ pip3 install -r requirements.txt
$ python3 setup.py sdist bdist_wheel
$ pip3 install dist/*.whl
pip3 install -r requirements.txt
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