So I am laying out the changes that we would probably want to see next:
list-feeds sub command to have 3 options (--bbox, --predicate and --pretty)
- by default we will show all the feed sources if no bbox input is given
- we might have to add a dependency for the predicate option on the bbox option since there's no use of it without bbox values given
- the pretty option for printing out the pretty table else we would just show the feed sources as a list ([nils] it should be output to stdout either separated by some character, e.g. space-separated, then we could even easily loop over the output in bash)
- now these feed sources should have a way to pipe them as input for the fetch feeds command; probably something like being able to select them ig
- [nils] we might have to do some (fuzzy?) text-matching when people want to search for e.g.
*berlin* when they want to get the exact name of a feed, but don't know what a feed is called exactly. I think fuzzy matching is over the top, a simple in would suffice IMO. needs to be a command line arg like --search or so. or even support regex, or both regex and simple text search. wdyt @Ananya2001-an ?
fetch-feeds sub command to have one option i.e --sources
- we will pass it as a string separated by commas
- we can pass the source names like ['Berlin', ...] same names as the modules inside feed sources dir
- also following the fetch code here: https://github.com/azavea/gtfs-feed-fetcher/blob/develop/FeedSource.py we are currently downloading the "latest" gtfs feed and then printing all info regarding its status inside a table which is nice but are we going to do something else along with that? I guess not since we just need the downloaded feed for the valhalla build instance later on….we would need to create an empty folder for the storing of those downloads ([nils] that should be a command line arg e.g.
--output-dir)…like in the azavea repo they had "gtfs"
- The check_status and extend_effective_dates utils are good for the downloaded feeds
- [nils] we should multi-thread at the very least the downloading via a command line arg e.g.
--concurrency for a pool of threads. here we can use threading as it's mostly network I/O which works quite well with python's threading (actual processing wouldn't because of the GIL, which kinda makes sure python can only run one thread at a time)
I guess the code written already is pretty good for the downloading and stuff so we will mostly copy paste but might have to still make some modifications as needed…feel free to add on to the list :)
So I am laying out the changes that we would probably want to see next:
list-feeds sub command to have 3 options (--bbox, --predicate and --pretty)
*berlin*when they want to get the exact name of a feed, but don't know what a feed is called exactly. I think fuzzy matching is over the top, a simpleinwould suffice IMO. needs to be a command line arg like--searchor so. or even support regex, or both regex and simple text search. wdyt @Ananya2001-an ?fetch-feeds sub command to have one option i.e --sources
--output-dir)…like in the azavea repo they had "gtfs"--concurrencyfor a pool of threads. here we can usethreadingas it's mostly network I/O which works quite well with python's threading (actual processing wouldn't because of the GIL, which kinda makes sure python can only run one thread at a time)I guess the code written already is pretty good for the downloading and stuff so we will mostly copy paste but might have to still make some modifications as needed…feel free to add on to the list :)