2.0.0 Release Candidate 1
Pre-releaseThe 2.0.0 major release includes support for new mobility modes, enhancements around Policy, and the alignment of the data and structure of Agency and Provider, among many other features.
LICENSE and DISCLAIMER
Use of OMF Releases are bound by the OMF License and Disclaimer.
RELEASE PLAN
Our 2.0.0 Release Plan page has more information about this history of this release, and includes a history of our public meetings with minutes.
UPGRADING
For guidance on when to upgrade and how to discuss MDS versions in city regulations, see our MDS Policy Language Guidance and MDS Version Guidance documents.
CHANGES
See the closed PRs tagged with Milestone 2.0.0 and Issues for a full list of changes.
Admin/General Changes
- Update state machine diagrams and create 3 new diagrams for each new modes
- Remove Schema and instead link to OpenAPI repo
- OpenAPI support in place of JSON Schema allows easier building of real-time MDS endpoint validation, and interactive documentation on Stoplight.
- Remove Geography from Policy
- Authorization consistency across MDS
- Make GBFS optional for some modes
- Align vehicle types to GBFS
- Updated MDS alignment with GBFS to include all of their vehicle types (including seated scooter) and the addition of new ones for modes (bus, truck, delivery robot, motorcycle), all propulsion types, and to require GBFS for only micromobility and car share (delivery robots and passenger services are option, but not well supported in GBFS).
- Added maintenance_pick_up event for out of PROW work
- Ability to send tip overs, surface type, and parking validation data if available from sensors
- New optional fields to include sensors now available and in use in the field by many micromobility companies for tip overs, surface type, and parking validation.
- Vertical accuracy for GPS telemetry
- All vehicle states are now clearly in or out of the right of way, no unknown state
- Many new provider IDs added
Modes Architecture
- Support for multiple modes/services in MDS
- Updates the base of MDS to have some shared objects and fields, and specific fields as needed for each mode.
- Adds specific modes to MDS, with help from Member Networks, and existing real world data exchanges between operators, agencies, and solution providers.
- Operators must register a unique UUID for each mode they operate under.
Passenger Services
Delivery Robots
Car Share
Work to bring modes together
- Add a "Data Provider UUID" to MDS
- New data provider id allows endpoints to include who is producing and serving up the data. Software companies and solution providers are encouraged to register for their own global UUID now to serve up operator or agency data with MDS.
- Support for Modes in Policy - specify which mode your policy applies to
Policy Reimagining
A reimagining of Policy, including top ten most common policies are clearly defined, edge cases (dwell time, trip definition, rule units, updating/ending policies, lookback periods) are clarified, Stops is out of beta, and Policy feeds are public
- Multimodal support in Policy
- Clarification on dwell time duration
- Clarification on possible values of rule_units
- Move Stops out of beta
- Policy is now public
- Updating and ending policy clarification
- Lookback period clarification
Policy Requirements
Requirements now supports linking to external use cases, and is moved out of beta because of adoption.
Agency/Provider Unification
The difference between Agency and Provider is that with Agency operators PUSH data to cities, and with Provider cities PULL data from operators. Both share the same data types, referenced in a new file, with the same endpoints and fields available.
- MDS Agency and Provider Unification
- Endpoints are now identical
- Data objects are now identical, referenced in new data-type.md file
- Distinction between Agency and Provider is now simply pushing data to agencies, or pulling data from operators
- Adding trips endpoint to Agency
- Adding trip metadata to Agency
- Trip telemetry points are no longer in the trips endpoint directly, instead referenced in their own telemetry endpoint. Start and end location only is available in trips.
Provider
Reports have a new adaptive scooter special group type, and improved formatting.
- Updates to provider reports including header, date format, column names, and adaptive scooter special group type
Geography
Jurisdiction
ACKNOWLEDGEMENTS
Thank you to our current and past steering committee members, GitHub pull request creators (BCycle, BIRD, Helbiz, Lacuna, Leo&Go, Nicolai Heilbuth, Poppy Mobility, Populus, Ride Report, SFMTA, Tembici, Troopy, Whoosh, Yego, Zig Zag), issue creators (ATOM Mobility, Blue Systems, DB Systel GmbH, Drover, Lacuna, Lime, Miami-Dade, Ning Shi, OpenBikeShare, OpenMobility.be, Populus, Ride Report, San Francisco County Transportation Authority, Telofun, TukTuk) for this release, and for the scores of organizations that participated on our weekly working group calls.
What's Changed
- Release 1.2.0 to dev by @schnuerle in #720
- Added LEO and ATOM by @schnuerle in #725
- Add TukTuk provider by @schnuerle in #730
- Adding Helbiz to providers.csv by @milos-ljubinkovic in #732
- Update providers.csv by @sonnessa in #729
- Added PBOT Requirements API url by @quicklywilliam in #738
- Adding Yego operator by @guiguille in #743
- Add Leo&Go provider by @jkurzanski in #751
- Add Provider Kiwibot by @schnuerle in #741
- Refactoring MDS in preparation for new modes by @marie-x in #745
- Add Scoot and Revel to providers.csv by @alexdemisch in #754
- Fixes to Requirements documentation by @quicklywilliam in #744
- Add passenger-services to feature-modes branch by @avatarneil in #735
- Request to add Troopy by @jkurzanski in #768
- Update agencies.csv to include SFMTA requirements URL by @alexdemisch in #776
- Request to add BCycle to Providers list by @johnadali in #783
- Issue 757 publish date vs published date by @schnuerle in #784
- Feature modes passenger services by @schnuerle in #763
- Extending MDS to Multiple Modes - Spec Infrastructure by @schnuerle in #733
- Bringing Delivery work into Delivery Robots by @schnuerle in #788
- Add Tembici Provider by @josebsneto in #793
- New Mode: Delivery Robots by @schnuerle in #789
- New Mode - Car Share by @schnuerle in #797
- Update providers.csv by @egor-bayandin in #800
- fix spelling error by @mguida22 in #803
- Adds Poppy Mobility by @teebot in #795
/reports
column names by @wellorder in #807- Reports - Add provider_id and adaptive_scooter as a special group type by @alexdemisch in #804
- Modes Feedback and Final Changes by @schnuerle in #801
- Improve description field in Policy to require more human readable details by @jyeo17 in #786
- Updating policy query parameter language to be clearer. by @janedotx in #742
- Reports - Accept header media-type by @wellorder in #810
- Reports - simplify start_date column by @wellorder in #809
- Policy Requirements - Use Case Support by @schnuerle in #813
- Replace unknown state by @jean-populus in #814
- Define a "trip" for the purposes of analyses by @jiffyclub in #762
- Better Telemetry error handling by @nheilbuth in #740
- updated examples read.me by @jean-populus in #819
- Remove 'rate' rule-type, since we can put rate_amount on any rule by @marie-x in #817
- Provider/Agency API alignment by @marie-x in #796
- remove hdop by @marie-x in #820
- Remove Geographies from Policy and make public by @schnuerle in #824
- Clarifying GBFS use with new modes by @schnuerle in #825
- Agency/Provider adjustments for Modes by @schnuerle in #826
- Sensors: Tip Over, Surface Type, Parking Validation by @schnuerle in #829
- Agency Provider Structure Tweaks by @schnuerle in #830
- Add Telofun operator by @schnuerle in #831
- Updated vehicle and propulsion types and max speed by @schnuerle in #833
- Added "Updating or Ending Policies" section by @schnuerle in #834
- Consolidating authorization across APIs by @schnuerle in #835
- Modes Cleanup for Release by @schnuerle in #836
New Contributors
- @milos-ljubinkovic made their first contribution in #732
- @sonnessa made their first contribution in #729
- @guiguille made their first contribution in #743
- @jkurzanski made their first contribution in #751
- @alexdemisch made their first contribution in #754
- @johnadali made their first contribution in #783
- @josebsneto made their first contribution in #793
- @egor-bayandin made their first contribution in #800
- @mguida22 made their first contribution in #803
- @teebot made their first contribution in #795
- @wellorder made their first contribution in #807
- @jyeo17 made their first contribution in #786
- @jean-populus made their first contribution in #814
- @nheilbuth made their first contribution in #740
Full Changelog: 1.2.0...2.0.0-rc1