Skip to content

Commit ce30ca9

Browse files
authored
Update version number to 2.3.0-rc1 and add release notes (#2114)
1 parent 4cc03a4 commit ce30ca9

File tree

2 files changed

+116
-1
lines changed

2 files changed

+116
-1
lines changed

HISTORY.md

Lines changed: 115 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,121 @@
11
---
22
title: Release History
33
---
4+
# 2.3.0-rc1 (2024-04-18)
5+
## Highlights
6+
The 2.3.0-rc1 release is our first release candidate pre-release, meant to test all the new features and enhancement for the upcoming 2.3.0 release.
7+
8+
There are two main new features:
9+
- The experimental cell-centric discrete spaces, as added in #1994. It allows having cells with not only properties but also active behaviors: the `CellAgent`. Its inspired by NetLogo's [patches](https://ccl.northwestern.edu/netlogo/bind/primitive/patches.html) but extend and generalize this concept further.
10+
- Full support for discrete event scheduling, as added in #2066. It allows scheduling events (like Agent actions) at any time, including non-integer timesteps.
11+
12+
There are a lot of other features: The Jupyter visualisation now supports sliders, `NetworkGrid.get_neighbors()` supports a radius, `AgentSet.get()` can retrieve multiple attributes and there are now benchmarks to track Mesa performance during development.
13+
14+
Finally, 2.3.0 stabilizes the `AgentSet` (including `model.agents`), making it the first experimental Mesa feature that is taken out of it's experimental phase.
15+
16+
Install this pre-release with:
17+
```
18+
pip install --pre mesa
19+
```
20+
We would love feedback before we release 2.3.0 stable in ~1 week.
21+
22+
## What's Changed
23+
### 🧪 Experimental features
24+
* Add cell-centric discrete spaces (experimental) by @Corvince in https://github.com/projectmesa/mesa/pull/1994
25+
### 🎉 New features added
26+
* Add performance benchmarking scripts by @EwoutH in https://github.com/projectmesa/mesa/pull/1979
27+
* feat: Implement Slider class for JupyterViz by @rht in https://github.com/projectmesa/mesa/pull/1972
28+
* Stabilize AgentSet by @EwoutH in https://github.com/projectmesa/mesa/pull/2065
29+
* Support discrete event scheduling by @quaquel in https://github.com/projectmesa/mesa/pull/2066
30+
### 🛠 Enhancements made
31+
* JupyterViz: Automatically deduce display name from model class by @rht in https://github.com/projectmesa/mesa/pull/1975
32+
* Add radius argument to NetworkGrid.get_neighbors() by @EwoutH in https://github.com/projectmesa/mesa/pull/1973
33+
* Speedup of Agentset.shuffle by @quaquel in https://github.com/projectmesa/mesa/pull/2010
34+
* feat: Let mesa runserver detect server.py as fallback by @rht in https://github.com/projectmesa/mesa/pull/2015
35+
* JupyterViz: {Convert make_plot & prepare ColorCard} to become Solara component by @rht in https://github.com/projectmesa/mesa/pull/2020
36+
* new feature: AgentSet.get can retrieve one or more then one attribute by @quaquel in https://github.com/projectmesa/mesa/pull/2044
37+
* Update CODE_OF_CONDUCT.md to version 2+ of contrib convenant by @jackiekazil in https://github.com/projectmesa/mesa/pull/2052
38+
* Improve flocking benchmark by @coderbeta1 in https://github.com/projectmesa/mesa/pull/2054
39+
* Remove JupyterViz Altair marker overlap for huge grid size by @rht in https://github.com/projectmesa/mesa/pull/2062
40+
* Add tooltip option to Altair chart by @FoFFolo in https://github.com/projectmesa/mesa/pull/2082
41+
* feat: Display model seed & allow user to specify it in JupyterViz by @rht in https://github.com/projectmesa/mesa/pull/2069
42+
* warn if placing already placed agent by @puer-robustus in https://github.com/projectmesa/mesa/pull/2083
43+
### 🐛 Bugs fixed
44+
* fix: Apply default value to slider by @rht in https://github.com/projectmesa/mesa/pull/2016
45+
* fix: Initialize model _steps and _time during __new__ by @rht in https://github.com/projectmesa/mesa/pull/2026
46+
* fix: Use model.schedule only when it is not None by @rht in https://github.com/projectmesa/mesa/pull/2050
47+
* fix: Remove JupyterViz grid marker overlap for huge grid size by @rht in https://github.com/projectmesa/mesa/pull/2049
48+
### 📜 Documentation improvements
49+
* Improve readability of badges by @rht in https://github.com/projectmesa/mesa/pull/2009
50+
* More pythonic implementation of wolf sheep by @quaquel in https://github.com/projectmesa/mesa/pull/2011
51+
* Adding super().__init__() to MoneyModel tutorial by @sw23 in https://github.com/projectmesa/mesa/pull/2025
52+
* docs: Convert howto.rst -> howto.md via rst2myst by @rht in https://github.com/projectmesa/mesa/pull/2033
53+
* docs: Convert best-practices,overview,packages,mesa,index to .md via rst2myst by @rht in https://github.com/projectmesa/mesa/pull/2034
54+
* docs: Convert api/*.rst -> api/*.md via rst2myst by @rht in https://github.com/projectmesa/mesa/pull/2035
55+
* docs: Rewrite howto.md using ChatGPT for clarity and conciseness by @rht in https://github.com/projectmesa/mesa/pull/2037
56+
* docs: Corrected Contributing Guide Link to Ensure Accessibility by @sahusiddharth in https://github.com/projectmesa/mesa/pull/2057
57+
* Rename links to internal .rst files to .md by @rht in https://github.com/projectmesa/mesa/pull/2058
58+
* docs: improve introductory tutorial by @puer-robustus in https://github.com/projectmesa/mesa/pull/2087
59+
### 🔧 Maintenance
60+
* Quality of Life: Make codecov less meticulous by @Corvince in https://github.com/projectmesa/mesa/pull/1966
61+
* Add CI workflow for performance benchmarks by @EwoutH in https://github.com/projectmesa/mesa/pull/1983
62+
* tests: Resolve warnings by defining PropertyLayer dtypes by @EwoutH in https://github.com/projectmesa/mesa/pull/1987
63+
* benchmarks.yml: Fix PR branch checkout when triggered by comment by @EwoutH in https://github.com/projectmesa/mesa/pull/1998
64+
* Quality of life: automatically fix ruff errors by @Corvince in https://github.com/projectmesa/mesa/pull/2004
65+
* benchmarks.yml: Run on addition of label instead of comment by @EwoutH in https://github.com/projectmesa/mesa/pull/2002
66+
* ci: Move codespell to pre-commit by @rht in https://github.com/projectmesa/mesa/pull/2040
67+
* Schelling by @coderbeta1 in https://github.com/projectmesa/mesa/pull/2053
68+
* Move ruff lint settings into dedicated section by @Corvince in https://github.com/projectmesa/mesa/pull/2073
69+
* ci: Use uv pip for faster build by @rht in https://github.com/projectmesa/mesa/pull/2038
70+
* test: Remove place_agent duplicate warnings by @rht in https://github.com/projectmesa/mesa/pull/2086
71+
### Other changes
72+
* Minor edits to benchmarking code by @quaquel in https://github.com/projectmesa/mesa/pull/1985
73+
* build(deps): bump codecov/codecov-action from 3 to 4 by @dependabot in https://github.com/projectmesa/mesa/pull/2030
74+
* [pre-commit.ci] pre-commit autoupdate by @pre-commit-ci in https://github.com/projectmesa/mesa/pull/2029
75+
* tests: Speed up test_batch_run by @rht in https://github.com/projectmesa/mesa/pull/2039
76+
* Update benchmarks.yml by @Corvince in https://github.com/projectmesa/mesa/pull/2043
77+
* docs: Convert visualization .rst -> .md via rst2myst by @rht in https://github.com/projectmesa/mesa/pull/2036
78+
* docs: Convert CONTRIBUTING .rst -> .md via rst2myst by @rht in https://github.com/projectmesa/mesa/pull/2041
79+
* Correct wolf energy gained from eating sheep by @JackAtOmenApps in https://github.com/projectmesa/mesa/pull/2048
80+
* feat: Implement Altair version of grid visualization by @rht in https://github.com/projectmesa/mesa/pull/1991
81+
82+
## New Contributors
83+
* @sw23 made their first contribution in https://github.com/projectmesa/mesa/pull/2025
84+
* @JackAtOmenApps made their first contribution in https://github.com/projectmesa/mesa/pull/2048
85+
* @coderbeta1 made their first contribution in https://github.com/projectmesa/mesa/pull/2054
86+
* @sahusiddharth made their first contribution in https://github.com/projectmesa/mesa/pull/2057
87+
* @FoFFolo made their first contribution in https://github.com/projectmesa/mesa/pull/2082
88+
* @puer-robustus made their first contribution in https://github.com/projectmesa/mesa/pull/2083
89+
90+
**Full Changelog**: https://github.com/projectmesa/mesa/compare/v2.2.4...2.3.0-rc1
91+
92+
# 2.2.4 (2024-01-26)
93+
## Highlights
94+
Mesa v2.2.4 is a small but important bugfix release for the 2.2 release series. It fixes an essential bug in where agents weren't shuffled in the `BaseScheduler`, affecting mainly the `RandomActivation` scheduler (effectively making it sequential activation)([#2007](https://github.com/projectmesa/mesa/pull/2007)). It also fixes a small behaviour change in `RandomActivationByType.agents_by_type()` ([#1996](https://github.com/projectmesa/mesa/pull/1996)). Furthermore, this release adds an internal clock to the `Model`, which allows to use a Mesa model without a scheduler (using the `AgentSet` API)([#1942](https://github.com/projectmesa/mesa/pull/1942)).
95+
96+
Updating from previous 2.2 releases is highly recommended, especially when using the `RandomActivation` scheduler.
97+
98+
## What's Changed
99+
### 🛠 Enhancements made
100+
* refactor: Remove dependence on model.schedule, add clock to Model by @rht in https://github.com/projectmesa/mesa/pull/1942
101+
### 🐛 Bugs fixed
102+
* Fix AgentSet inplace shuffle (and thus RandomActivation), add tests by @EwoutH and @quaquel in https://github.com/projectmesa/mesa/pull/2007
103+
* fix: Reverse dict key and value for agents_by_type by @rht in https://github.com/projectmesa/mesa/pull/1996
104+
105+
**Full Changelog**: https://github.com/projectmesa/mesa/compare/v2.2.3...v2.2.4
106+
107+
# 2.2.3 (2024-01-22)
108+
## Highlights
109+
Mesa 2.2.3 is a small release with two improvements to the experimental Solara visualisation, on request of one of our contributors. No stable features have changed.
110+
111+
## What's Changed
112+
### 🧪 Experimental features
113+
* solara_viz: Add borders around ContinuousSpace by @EwoutH in https://github.com/projectmesa/mesa/pull/1988
114+
### 🐛 Bugs fixed
115+
* fix: Explicitly specify JupyterViz space view limits by @rht in https://github.com/projectmesa/mesa/pull/1984
116+
117+
**Full Changelog**: https://github.com/projectmesa/mesa/compare/v2.2.2...v2.2.3
118+
4119
# 2.2.2 (2024-01-22)
5120

6121
## Highlights

mesa/__init__.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@
2626
]
2727

2828
__title__ = "mesa"
29-
__version__ = "2.3.0-dev"
29+
__version__ = "2.3.0-rc1"
3030
__license__ = "Apache 2.0"
3131
_this_year = datetime.datetime.now(tz=datetime.timezone.utc).date().year
3232
__copyright__ = f"Copyright {_this_year} Project Mesa Team"

0 commit comments

Comments
 (0)