Skip to content

v0.9.0 alpha 0

Pre-release
Pre-release
Compare
Choose a tag to compare
@EwoutH EwoutH released this 27 Sep 22:49
· 20 commits to main since this release
3c4f884

Highlights

The Mesa-geo v0.9.0a0 pre-release is the first Mesa-geo version compatible with Mesa 3.0.

One of the most notable changes is the automatic assignment of unique IDs to agents. This eliminates the need for manual ID specification, simplifying agent creation. For example, where you previously might have initialized an agent with:

agent = MyGeoAgent(unique_id=1, model=model, geometry=point, crs="EPSG:4326")

You now simply omit the unique_id:

agent = MyGeoAgent(model=model, geometry=point, crs="EPSG:4326")

Mesa-geo can now directly use Mesa 3.0's SolaraViz visualisation, with an additional make_geospace_leaflet method to support geospaces. The new visualization can be used like:

from mesa.visualization import SolaraViz
import mesa_geo.visualization as mgv

model = GeoSIR()
SolaraViz(
    model,
    name="GeoSIR",
    components=[
        mgv.make_geospace_leaflet(SIR_draw, zoom=12, scroll_wheel_zoom=False),
        mesa.visualization.make_plot_measure(["infected", "susceptible", "recovered", "dead"]),
        mesa.visualization.make_plot_measure(["safe", "hotspot"]),
    ]
)

Finally, all GIS example models in mesa-examples have been updated to be fully compatible with the latest Mesa 3.0 alpha and this pre-release.

The v0.9.0a0 pre-release is a snapshot release to allow starting testing against Mesa 3.0, and might introduce new breaking changes in upcoming (pre-)releases.

Install with:

pip install -U --pre mesa-geo

What's Changed

⚠️ Breaking changes

🛠 Enhancements made

  • add method to make geospace as a solara component by @wang-boyu in #246

🐛 Bugs fixed

  • raster_layer: Don't pass unique_id to Agent in Cell by @EwoutH in #249

📜 Documentation improvements

  • Readthedocs: Don't let notebook failures pass silently by @EwoutH in #250
  • intro tutorial: Remove unique_id from Agent init by @EwoutH in #251

Full Changelog: v0.8.1...v0.9.0a0