Fixes: https://github.com/airbytehq/airbyte-internal-issues/issues/14576
## What
We had a previous swarm issue that ended up being a customer
misconfiguration due to expired or invalid creds. That being said, the
error message was particularly unhelpful w/ a bunch of python stack
traces. This replace that with far more useful information:
```
{"type":"CONNECTION_STATUS","connectionStatus":{"status":"FAILED","message":"'Github credentials have expired or changed, please review your credentials and re-authenticate or renew your access token.'"}}
```
## How
The main thing to call out here is that we want to get in the habit of
using our dedicated `HttpClient` which gives us better error handling
and just default behavior as a whole instead of using the `requests`
library. Otherwise the rest is pretty straightforward
## Review guide
nah
## User Impact
none
## Can this PR be safely reverted and rolled back?
- [x] YES 💚
- [ ] NO ❌
## What
there is an issue while processing min time to wait on token rate
limits:
.seconds - returns positive value
fixed to
.total_seconds() - returns both negative and positive values. (negative
when reset time for token is older then datetime now)
## How
<!--
* Describe how code changes achieve the solution.
-->
## Review guide
<!--
1. `x.py`
2. `y.py`
-->
## User Impact
<!--
* What is the end result perceived by the user?
* If there are negative side effects, please list them.
-->
## Can this PR be safely reverted and rolled back?
<!--
* If unsure, leave it blank.
-->
- [ ] YES 💚
- [ ] NO ❌