Skip to content

Releases: wsp-sag/network_wrangler

v1.0-beta.2

21 Oct 19:55
Compare
Choose a tag to compare

What's Changed

🚀 Features

  • Adds script and notebook for creating your own example data from OSM

🏗️ Refactor

  • Moves all roadway selection logic from the data models to selection classes

📘 Docs

  • Pull network docs from network data models instead of writing anew
  • Add in all relevant API docs to api.md
  • Improve general formatting and comprehensiveness of docs

⏱️ Performance

  • Upgrades performance of selection when selecting by a dictionary of attributes: c630b00

📎 Examples

  • Minimizes example data size

🐞 Bugs

  • Fix scenario write()/load() (#389)
  • Downgrades error to warning for deleting roadways with transit so can apply changes (#390)
  • Adds back all geojson files which were accidentally added to .gitignore
  • Fixes notebooks in /notebook to use current API
  • Minor typos in logging
  • Minor bugs in tests
  • Fix error in shape links gdf creation and add tests for it to not happen again

🧹 Chores

  • Tighten mypy and ruff settings and fix all violations
  • Deletes extraneous file validation_failure_cases.csv
  • rm old project cards that don't match current network
  • Updates API for project cards to be consistent with project card v3.3.3

Full Changelog: v1.0-alpha.2...v1.0-beta.2

v1.0-alpha.2

30 Sep 09:28
Compare
Choose a tag to compare
v1.0-alpha.2 Pre-release
Pre-release

Pre-release for metcouncil to test their workflows:

  1. Make roadway project cards from log files.ipynb
  2. Make transit project cards from log files.ipynb
  3. createV01_standardnetwork.ipynb
  4. CreateVer02_baseyear.ipynb

v1.0-alpha.1

17 Jul 08:34
Compare
Choose a tag to compare
v1.0-alpha.1 Pre-release
Pre-release

Contains almost all functionality for wrangler v1.0.

Remaining issues:

  • 1. update gtfs.stops data model to use dual-primary key stop_id/trip_id
  • 2. add a js lock-like file for conda: environment.yml
  • 3. complete documentation
  • 4. update notebooks
  • 5. update st paul example data to latest data model

What's Changed

  • Implicit and fast validation
  • Speed , stability and memory efficiency
  • Support for multiple serialization formats
  • Updated network variable names and explicit data models
  • Add ability to edit transit route shape
  • Improved error checking/logging/verboseness
  • I/O and Mutation Speed
  • Selection flexibility for transit based on any feature or by link or node
  • More flexible and fast transition to geodataframes and visualization for (almost) any data part
  • Easy data clipping to geographic bounds
  • Scripts for actions you might want to execute from command line (i.e. data conversion/clipping/etc)

Housekeeping

  1. Separation of causes prevents circular reference collisions, limits import bloat, and improves legibility/organization.
    • Project card functionality in project card repo
    • Separate modules for separate functionality
  2. Reliability achieved through more testable code and expanding test coverage with more test cases and also anti-patterns
    • Testable code
    • Test coverage
  3. Explicit data models that make complex data structures obvious and easy to validate
    • Legible
    • Self-documenting
    • Flexible
    • Validatable
  4. Clean code principles that make code easier to test and maintain
    • more functions that do a single thing...and do it well
    • classes that are small - functions that access or manipulate them
  5. Documentation
    • consistent and detailed functional documentation
    • consistent type hints
    • usage for modules and classes
    • overall documentation leverages the flexible and less bloated MkDocs package
  6. Removes less-well-maintained dependencies
    • Replaces Partridge with internal functionality

New Contributors

  • @lmz made their first contribution in #281

Full Changelog: v0.2.0-alpha...v1.0-alpha.1

v0.2.0-alpha

16 Sep 19:39
f90149e
Compare
Choose a tag to compare
v0.2.0-alpha Pre-release
Pre-release

Adds feature to allow network manipulation via a hybrid project card (i.e. my_project.wrangler or project.wr) which is formatted with YAML front-matter surrounded by bounding lines (i.e. ---) followed by python code which acts as on the RoadwayNetwork instance. Category field must be Calculated Roadway. Lines which bound the YAML component must be identical.

Example file:

----
Category: Calculated Roadway
Project: My awesome roadway project to make 
----

self.links_df.loc[self.links_df['lanes'] == 4, 'lanes'] = 12

v0.1.0-alpha

09 Sep 18:44
Compare
Choose a tag to compare
v0.1.0-alpha Pre-release
Pre-release
add recommonmark to development requirements

v0.0.2

05 Feb 23:04
343e692
Compare
Choose a tag to compare
v0.0.2 Pre-release
Pre-release
cleanup (#151)

Cleanup and update requirements now that pandas 1.0 is out