Conversation
There was a problem hiding this comment.
Pull request overview
This PR refactors bambam by extracting common types and functions into a new bambam-core crate to support work on bambam-gtfs-flex while avoiding circular dependencies with the top-level bambam CLI crate.
Changes:
- Created new
bambam-corecrate with shared model types, state management, utilities, and output plugins - Refactored
bambam-gtfsto usebambam-coredependencies - Updated workspace and CI/CD configuration to include the new crate
Reviewed changes
Copilot reviewed 41 out of 42 changed files in this pull request and generated 1 comment.
Show a summary per file
| File | Description |
|---|---|
| rust/bambam-core/Cargo.toml | New crate manifest for bambam-core package |
| rust/bambam-core/src/lib.rs | Core library entry point exposing model and util modules |
| rust/bambam-core/src/model/* | State management, field names, operations, and output plugin types |
| rust/bambam-core/src/util/* | Date deserialization, geometry utilities, and polygonal R-tree implementation |
| rust/bambam-gtfs/src/model/traversal/transit/* | Transit traversal model implementation using bambam-core types |
| rust/Cargo.toml | Added bambam-core to workspace members |
| .github/workflows/rust-release.yaml | Added bambam-core publish step to release workflow |
Comments suppressed due to low confidence (1)
rust/bambam-gtfs/src/model/traversal/transit/schedule_loading_policy.rs:1
- The import
routee_compass::plugin::input::defaultis unused in this file. This import should be removed as it doesn't contribute to the code and may cause confusion.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
|
@yamilbknsu big change set; but ignore all of the little file changes. contents were not modified (well, i did remove a few unused imports somewhere, i couldn't help it); so just do me a favor and look at the layout of this new crate as acceptance criteria. we could probably plan to migrate even more core data types and algorithms to the core crate in the near term but this at least unblocks progress on gtfs-flex. |
yamilbknsu
left a comment
There was a problem hiding this comment.
The structure looks good and it compiles! I found one unused import (and two traits that are being flagged as unused but I see them implemented so idk)
this PR supports #87 by refactoring bambam so that some common types and functions are moved into a
bambam-corecrate. this allows the current work on bambam-gtfs-flex to depend on bambam-core and bambam-gtfs crates without making circular references to the top-level bambam crate which houses the bambam CLI app.