Production-readiness improvements for the GitHub lister
- GitHub: Use function for requests.Session initialization
- GitHub: Start moving the request logic to a separate function
- GitHub: Move rate limit handling to the request function
- Retry GitHub requests on ChunkEncodingErrors
- GitHub: Move rate-limit reset logic to RateLimited exception
- GitHub: handle Server Errors
- GitHub: handle edge cases with empty responses
- GitHub: more verbose logging on unexpected responses
Test Plan
tested in docker, needs unit tests
Migrated from D5152 (view on Phabricator)