Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Where should transformer strategies live? #102

Open
laidig opened this issue May 7, 2018 · 4 comments
Open

Where should transformer strategies live? #102

laidig opened this issue May 7, 2018 · 4 comments

Comments

@laidig
Copy link
Contributor

laidig commented May 7, 2018

Summary:

Currently, there are transformer strategies in both org.onebusaway.gtfs_transformer.updates and org.onebusaway.gtfs_transformer.impl. This caused me some confusion (as not all transformations are documented), and I wrote a duplicate transform.

Is there a reason why they are split?

I propose that they be all moved together into one of the following org.onebusaway.gtfs_transformer packages:

updates
impl (as they implement a strategy)
strategies (a new package)

If someone else opines, I'd be happy to refactor this, test, and submit a PR.
Expected behavior:

They should be in one package.

@sheldonabrown
Copy link
Member

We've been rushing some changes for the latest project, and this repo could use some cleanup in general. Some things that should happen:

  1. Document some of the hidden gems, like support for s// and m//
  2. Create a plugin convention and pull out some of the agency specific transforms, and start refactoring
  3. Investigate, document, and if necessary implement the ability to commit, apply, or flatten the dao from within a transform. Either that or document that multi-part transforms are not recommended
  4. General cleanup as suggested above

@sheldonabrown
Copy link
Member

sheldonabrown commented May 8, 2018

I spoke with the rest of my team and they agree with your proposed changes. We are happy to accept any contributions you are willing to make...

@kurtraschke
Copy link
Contributor

kurtraschke commented Mar 27, 2019

Any thoughts on transform strategies that live outside the onebusaway-gtfs-modules tree? Right now I'm just including onebusaway-gtfs-transformer-cli as a dependency and building a shaded JAR whose main class is org.onebusaway.gtfs_transformer.GtfsTransformerMain, so as to avoid having to tinker with the classpath, but that's not a particularly clean solution.

@sheldonabrown
Copy link
Member

We've been doing a similar pattern for other modules recently for code not appropriate for the generic/open source repo. So no, no better ideas here so far.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants