Recent Releases of mesa-geo

mesa-geo - v0.9.1

What's Changed

🛠 Enhancements made

  • refactor: :recycle: separate cells' initialization into a private method by @SongshGeo in https://github.com/projectmesa/mesa-geo/pull/274 ### 🐛 Bugs fixed
  • fix typo in intro tutorial by @wang-boyu in https://github.com/projectmesa/mesa-geo/pull/275

New Contributors

  • @SongshGeo made their first contribution in https://github.com/projectmesa/mesa-geo/pull/274

Full Changelog: https://github.com/projectmesa/mesa-geo/compare/v0.9.0...v0.9.1

- Python
Published by wang-boyu about 1 year ago

mesa-geo - v0.9.0

What's Changed

🐛 Bugs fixed

  • fix links to readthedocs site by @wang-boyu in https://github.com/projectmesa/mesa-geo/pull/257
  • fix broken mesa dependencies in GeoJupyterViz by @AdamZh0u in https://github.com/projectmesa/mesa-geo/pull/269

🔧 Maintenance

  • rename makegeospaceleaflet to makegeospacecomponent by @wang-boyu in https://github.com/projectmesa/mesa-geo/pull/270
  • update makeplotmeasure method name from mesa viz by @wang-boyu in https://github.com/projectmesa/mesa-geo/pull/264
  • Require Mesa 3.0 stable by @EwoutH in https://github.com/projectmesa/mesa-geo/pull/260

Full Changelog: https://github.com/projectmesa/mesa-geo/compare/v0.9.0a1...v0.9.0

- Python
Published by wang-boyu about 1 year ago

mesa-geo - v0.9.0 alpha 1

Highlights

This small pre-release fixes a bug in the RasterLayer rendering and deprecated the old GeoJupyterViz, in favor of the new SolaraViz.

What's Changed

🐛 Bugs fixed

  • fix raster layer rendering in solaraviz by @wang-boyu in https://github.com/projectmesa/mesa-geo/pull/254 ### 📜 Documentation improvements
  • Deprecate geojupyterviz and update intro tutorial by @wang-boyu in https://github.com/projectmesa/mesa-geo/pull/255

Full Changelog: https://github.com/projectmesa/mesa-geo/compare/v0.9.0a0...v0.9.0a1

- Python
Published by EwoutH over 1 year ago

mesa-geo - v0.9.0 alpha 0

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:

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

You now simply omit the unique_id:

python 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:

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

model = GeoSIR() SolaraViz( model, name="GeoSIR", components=[ mgv.makegeospaceleaflet(SIRdraw, zoom=12, scrollwheelzoom=False), mesa.visualization.makeplotmeasure(["infected", "susceptible", "recovered", "dead"]), mesa.visualization.makeplot_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: bash pip install -U --pre mesa-geo

What's Changed

⚠️ Breaking changes

  • Require Mesa 3.0 by @EwoutH in https://github.com/projectmesa/mesa-geo/pull/244
  • Automatically assign unique_id's by @EwoutH in https://github.com/projectmesa/mesa-geo/pull/248 ### 🛠 Enhancements made
  • add method to make geospace as a solara component by @wang-boyu in https://github.com/projectmesa/mesa-geo/pull/246 ### 🐛 Bugs fixed
  • rasterlayer: Don't pass uniqueid to Agent in Cell by @EwoutH in https://github.com/projectmesa/mesa-geo/pull/249 ### 📜 Documentation improvements
  • Readthedocs: Don't let notebook failures pass silently by @EwoutH in https://github.com/projectmesa/mesa-geo/pull/250
  • intro tutorial: Remove unique_id from Agent init by @EwoutH in https://github.com/projectmesa/mesa-geo/pull/251

Full Changelog: https://github.com/projectmesa/mesa-geo/compare/v0.8.1...v0.9.0a0

- Python
Published by EwoutH over 1 year ago

mesa-geo - v0.8.1

Highlights

Mesa-Geo 0.8.1 is a small patch release containing a single feature, a documentation update and a bug fixed.

The real novelty is that from now on, all GIS examples on Mesa-examples are tested in CI against Mesa-Geo. We fixed 16 bugs in the 7 GIS example models (mesa-examples#172), which are now available on two branches: - On the main branch GIS examples can be found will keep being updated for the latest Mesa and Mesa-Geo versions. - On the mesa-2.x branch GIS examples examples can be found that keep working with Mesa 2.x and Mesa-Geo 0.8.x.

The Mesa-Geo 0.8.x. series is compatible with Mesa 2.3.x. The next Mesa-Geo release series, 0.9.x, will be compatible with with Mesa 3.0.

What's Changed

🎉 New features added

  • Expose rasterio's opener argument in Rasterlayer.from_file by @EwoutH in https://github.com/projectmesa/mesa-geo/pull/237 ### 🐛 Bugs fixed
  • add model parameter in RasterLayer class method by @wang-boyu in https://github.com/projectmesa/mesa-geo/pull/240 ### 📜 Documentation improvements
  • Update intro_tutorial.ipynb by @tpike3 in https://github.com/projectmesa/mesa-geo/pull/234 ### 🔧 Maintenance
  • Add test script for GIS examples and run that in CI by @EwoutH in https://github.com/projectmesa/mesa-geo/pull/241

Full Changelog: https://github.com/projectmesa/mesa-geo/compare/v0.8.0...v0.8.1

- Python
Published by EwoutH over 1 year ago

mesa-geo - v0.8.0

Highlights

  • The Tornado visualization server is removed and replaced with SolaraViz, which also works within Jupyter notebooks (https://github.com/projectmesa/mesa-geo/pull/212). This is in line with Mesa's recent changes to use Solara for visualization.
  • The Introductory Tutorial has been fully rewritten for Mesa-Geo 0.8.0
  • The 0.8.x series are the releases compatible with Mesa 2.3.x. The next major release will be compatible with Mesa 3.0+.

🎉 New features added

  • Update mesa-geo to sync with mesa >=2.3.0 by @tpike3 in https://github.com/projectmesa/mesa-geo/pull/212

🛠 Enhancements made

  • Update tutorial and viz by @tpike3 in https://github.com/projectmesa/mesa-geo/pull/217

📜 Documentation improvements

  • fix links and installation instructions in README file by @wang-boyu in https://github.com/projectmesa/mesa-geo/pull/213
  • .readthedocs.yaml: Use latest Ubuntu and Python versions by @EwoutH in https://github.com/projectmesa/mesa-geo/pull/221
  • docs: update conf.py to be in sync with mesa by @wang-boyu in https://github.com/projectmesa/mesa-geo/pull/223
  • docs: remove api docs entry for removed visualization module by @wang-boyu in https://github.com/projectmesa/mesa-geo/pull/224
  • Fix kernel issue by @tpike3 in https://github.com/projectmesa/mesa-geo/pull/229
  • Remove cell output by @tpike3 in https://github.com/projectmesa/mesa-geo/pull/231

🔧 Maintenance

  • Update configuration, metadata and tests by @tpike3 in https://github.com/projectmesa/mesa-geo/pull/208
  • fix: Use correct package name for Pip by @rht in https://github.com/projectmesa/mesa-geo/pull/214
  • pyproject.toml: Always use latest ruff by @EwoutH in https://github.com/projectmesa/mesa-geo/pull/219
  • pyproject.toml: Use mesa version smaller than 3 for now by @EwoutH in https://github.com/projectmesa/mesa-geo/pull/220
  • CI: Add job to test with pre-release dependencies, including Mesa by @EwoutH in https://github.com/projectmesa/mesa-geo/pull/218

Full Changelog: https://github.com/projectmesa/mesa-geo/compare/v0.7.1...v0.8.0

- Python
Published by wang-boyu over 1 year ago

mesa-geo - v0.7.1

🐛 Bugs fixed

  • fix: remove old map layers before rendering new layers by @wang-boyu in https://github.com/projectmesa/mesa-geo/pull/194 (thanks @rw73mg for reporting)

Full Changelog: https://github.com/projectmesa/mesa-geo/compare/v0.7.0...v0.7.1

- Python
Published by wang-boyu almost 2 years ago

mesa-geo - v0.7.0

Special Notes

  • Update Mesa dependency to v2.2
  • The pinning of Mesa is now on the major version, instead of the minor version. This means that Mesa-Geo v0.7.0 will work with Mesa v2.2, v2.3, v2.4, etc. but not with Mesa v3.0 or later.

🛠 Enhancements made

  • create and update rtree spatial index only when needed by @wang-boyu in https://github.com/projectmesa/mesa-geo/pull/179

🔧 Maintenance

  • fix link to examples by @wang-boyu in https://github.com/projectmesa/mesa-geo/pull/167
  • Correct link to GeoSchelling example and update copyright string by @Holzhauer in https://github.com/projectmesa/mesa-geo/pull/175
  • fix rtd build error and upgrade to python 3.9 by @wang-boyu in https://github.com/projectmesa/mesa-geo/pull/176
  • update pre-commit and ga workflows to be consistent with mesa by @wang-boyu in https://github.com/projectmesa/mesa-geo/pull/181
  • add config file to automatically generate release notes by @wang-boyu in https://github.com/projectmesa/mesa-geo/pull/184
  • update ga workflows to be consistent with mesa by @wang-boyu in https://github.com/projectmesa/mesa-geo/pull/185

New Contributors

  • @Holzhauer made their first contribution in https://github.com/projectmesa/mesa-geo/pull/175

Full Changelog: https://github.com/projectmesa/mesa-geo/compare/v0.6.0...v0.7.0

- Python
Published by wang-boyu about 2 years ago

mesa-geo - v0.6.0

Special Notes

  • update mesa dependency to v2.1

Improvements

  • use Pathlib #149 (thanks @catherinedevlin for contributing)

  • Docs updates

    • docs: use pydata theme #152
    • docs: use myst-nb to compile notebooks at build time #159
  • Example updates

    • remove examples and their tests #163

Fixes

  • fix AttributeError in GeoSpace.agents_at() #165 (thanks @SongshGeo for reporting)

- Python
Published by wang-boyu over 2 years ago

mesa-geo - v0.5.0

Improvements

  • Docs updates

    • add citation information about mesa-geo #117
    • add citation info to readthedocs #118
    • docs: update docstrings on how to use providers requiring registration #141
  • Front-end updates

    • add scale to Leaflet map #123
    • allow basemap tiles configuration #127
  • CI updates

    • add testing for python 3.11 #122
    • ci: replace flake8 with ruff #132
    • ci: update os, python versions, and dependabot configurations #142
    • ci: pin ruff version to v0.0.254 #144

Fixes

  • fix WMSWebTile.to_dict() method #140

- Python
Published by wang-boyu almost 3 years ago

mesa-geo - v0.4.0

Improvements

  • export geoagents and raster cells #98
  • use ModularServer from Mesa #109
  • implement simpler Mesa-Geo namespace #115

  • Docs updates

    • create Read the Docs #99
    • update README with badges and matrix chat link #100
  • Front-end updates

    • auto zoom to geospace when view & zoom are missing #103
  • CI updates

    • add pre-commit config and run it on all files #107
  • Example updates

    • link example models to readthedocs #101
    • fix spatial variation of water level in rainfall example #108
    • fix youtube links in geo_schelling examples #113

Fixes

  • replace BuildCommand & DevelopCommand with BuildPyCommand during setup #106

- Python
Published by wang-boyu over 3 years ago

mesa-geo - v0.3.0

Special Notes

  • BREAKING: rename model.grid to model.space #40
  • BREAKING: rename GeoAgent's shape attribute to geometry #57

Improvements

  • feat/crs #58
    • add GeoAgent.crs attribute
    • update GeoSpace with GeoAgent.crs
  • extract an _AgentLayer from GeoSpace #62
  • add layers into geospace #67
  • implement RasterLayer #75
  • create raster layer from file #92

  • Front-end updates

    • implement LeafletPortrayal dataclass for GeoAgent portrayal #84
  • CI updates

    • ci: Replace Travis with GH Actions #47
    • ci: Disable PyPy tests for now #56
  • Dependency updates

    • Frontend dependencies #54
    • remove all frontend dependencies available from mesa
    • create setup.cfg and pyproject.toml from setup.py
    • download leaflet during install #59
    • remove version number from leaflet filenames #61
    • update for Mesa v1.0.0 #78
    • specify mesa 1.x dependency
    • update for mesa css includes
    • remove jQuery usage in MapModule.js
    • use Slider instead of UserSettableParameter in examples
  • Example updates

    • update examples #74
    • change examples folder structure
    • add test for examples
    • add geoschellingpoints example
    • add rainfall and urban growth examples #80
    • add uganda example #90
  • Other improvements

    • add github issue templates #38
    • apply Black to all Python files #50
    • add code of conduct and contributing guide #69
    • update license with year and contributors #86
    • rename master branch to main #89

Fixes

  • fix remove_agent in GeoSpace #34
  • remove deprecated skip_equivalent from pyproj #43
  • flake8: Fix errors #51
  • rename InstallCommand to BuildCommand #55
  • fix codecov and README.md #71
  • use shape.centroid instead of shape.center() #73
  • fix unique id exception for raster cells #83
  • fix total_bounds check in GeoSpace #88

- Python
Published by rht over 3 years ago

mesa-geo -

  • Performance improvements
  • Add GeoSIR example (thanks @glicerico )
  • Fix pyproj future warning (thanks @majdal )

- Python
Published by Corvince over 5 years ago

mesa-geo -

Fixed readme on pypi

- Python
Published by Corvince about 6 years ago

mesa-geo -

The GeoSchelling example should work again

- Python
Published by Corvince about 6 years ago

mesa-geo -

Known Issue

You can't use a Mesa datacollector with lambda functions or attribute names. Lambda functions will never work, because mesa-geo pickles agents into the GeoSpace rtree index and lambda functions are not pickleable.

Attribute names will work as soon as projectmesa/mesa#589 is merged.

- Python
Published by Corvince over 7 years ago