Skip to content

Releases: MobilityData/gtfs-validator

v2.0.0

24 Mar 20:05
131ab53
Compare
Choose a tag to compare

What's new 🆕

We're excited to bring you this v2 release of the gtfs-validator! A lot has changed since v1, and we think you'll appreciate the new features.

  • Faster 🚀 and stronger 💪 thanks to a new multi-threaded architecture (thank you @aababilov!) (PR #486)
    • Supports the largest known real-world GTFS datasets. For example, the Netherlands GTFS previously failed with an OutOfMemory error, and now it can be validated in 2 minutes and 12 seconds on an ordinary laptop!
    • Validates datasets much faster. For example, MBTA used to take 38 seconds to validate, and now it only takes 14 seconds - less than half the time!
  • ⏬ Reduces the amount of code needed for adding new validation rules and support for new GTFS files and fields by leveraging Java annotations and AutoValue
  • 📝 Notice definitions for validation rules have been updated
    • Notice severities now align with the canonical GTFS spec (e.g., issues #472, #417). ERRORS are for items that the spec explictly requires or prohibits, and WARNINGS are for items that will impact the quality of GTFS datasets but aren't strictly required (suggestions or best practices).
    • Notices have ported to the new architecture (e.g., PR #592, PR #710). See the "Rules" documentation for the new v2 notice definitions and the "v1 to v2 Migration Guide" for a table mapping v1 notices to v2 notices.
  • 🛠 Better error handling and reporting
    • In case of problems with the validator software itself, an error report is now written to a file system_errors.json to help with troubleshooting (PR #596). Normal validation results can be found in report.json.
  • 🗺 New project roadmap
    • Check out the project wiki. Please feel free to add things you are interested in!

v1.4.0

23 Nov 20:31
76970f6
Compare
Choose a tag to compare

What's new 🆕

  • We now generate a validation report even if the software unexpectedly crashed: users will be informed that it happened and are invited to report the error.
  • The validation report name has been reworked to include information regarding the feed's feed_info.publisher_name or agency.agency_id.
  • Various bug fixes.
  • Our documentation for releases has been updated to match the latest development.

NPEs ❌

#469

Fixes 🔧

#462
#465

Changes ⚠️

#479

#481
#488
#487

Doc 📖

#463
#478
#490

v1.3.1 -- Deep Dive Oct. 28th

27 Oct 16:08
d9d8461
Compare
Choose a tag to compare

v1.3.0

26 Oct 18:54
1224273
Compare
Choose a tag to compare

What's new

You can now run the validator directly on GitHub, see the relevant readme section: https://github.com/MobilityData/gtfs-validator/blob/master/README.md#via-github-actions---run-the-validator-on-any-gtfs-archive-available-on-a-public-url

We now have a local web UI

We now provide Docker images, see https://github.com/orgs/MobilityData/packages/container/gtfs-validator/192493
Release process completely automated, release cycle should be on a fixed schedule now

Our README has been updated.

NPEs

#387
#423

Fixes

#394
#429
#433

Changes

#395
#438
#439
#443

v1.2.2

18 Sep 15:39
Compare
Choose a tag to compare

Description

Extend the number of supported rules to achieve feature parity with the python Google validator for what is strictly in spec.

New rules

  • conditional presence of calendar.txt or calendar_dates.txt - #355

stops

  • stops too far from trip shape - #340

agency

  • agency.agency_lang match feed_info.feed_lang - #352

shapes

  • increasing shape_dist_traveled along a shape - #363

csv

  • no duplicate column in CSV - #326
  • no empty csv file - #317

routes

  • names unicity - #351

stop_times

  • stop times departure time after arrival time - #198
  • stop times travel backward in time - #338
  • fast travel between stops - #332
  • increasing distance stop times - #350

stop_times and trips

  • verify no overlap in trip block #346

trips

  • trip start and end time verification - #327
  • additional verifications #344

frequencies

  • frequencies start time before end time #335
  • verify no overlap - #349

Behavior changes

  • abort on error - #339

v1.2.1

28 Jul 21:36
Compare
Choose a tag to compare

Release notes

  • Complete implementation of CSV validation

    • agency.txt, stops.txt, routes.txt, trips.txt, stop_times.txt, levels.txt, transfers.txt, calendar.txt, pathways.txt, calendar_dates.txt, shapes.txt, feed_info.txt
  • Agency related validation

  • Validate route id reference in trips

  • Cross validation between agency.txt and routes.txt

  • Fix for issues #288 and #322

  • Validate trips.service_id

  • Validate shape_id references

  • Feed related validation

Additional info

  • Starting with this release we provide our tests results as well as javadoc
  • You can find the complete set of implemented rules in RULES.md
  • You can find snapshot versions of the latest merge on master via our GitHub action page

v1.2.0

16 Jun 19:14
Compare
Choose a tag to compare
v1.2.0 Pre-release
Pre-release
  • Notice format has been reworked

    • level and code have been separated
    • extra data is serialized in a noticeSpecific object in the JSON output
  • Add feature to run the validator with a json configuration file in place of command line arguments

  • Add a feature to run the validation only on a subset of files

  • Add GTFS semantics validation

  • Add documentation detailing implemented rules

  • Add documentation on how to extend the validation rules

  • Various bug fixes

v1.1.0

27 Mar 23:14
Compare
Choose a tag to compare

First stable release

  • add supports for all files that can be contained in a GTFS archive
  • add support of all GTFS types for CSV validation and base GTFS validation (numeric ranges and string formats)
  • add JSON export of validation results
  • add protobuf export of validation results

See the v1.1.0 README for usage information.

Note that command-line parameters in the master branch have changed since this release.

Note: README.md link to GTFS specification schema should point here

v1.0.1

13 Mar 20:48
Compare
Choose a tag to compare
v1.0.1 Pre-release
Pre-release
  • fix for #54
    • allow for validation of all required and optional GTFS files to the exclusion of calendar.txt, calendar_dates.txt, stop_times.txt and frequencies.txt
  • additional console output

v 1.0.0 - MVP release

11 Mar 05:11
Compare
Choose a tag to compare
v 1.0.0 - MVP release Pre-release
Pre-release

First public release

Base validation

  • header presence
  • row length
  • numeric types parsing
  • valid ranges according to schema file

Applied to feed_info.txt, agency.txt, stops.txt, routes.txt, trips.txt, pathways.txt and levels.txt

Validation results are visible in the console as well as in result.txt in your output folder.
Requires Java 11