-
Notifications
You must be signed in to change notification settings - Fork 4.4k
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
🚨🚨 Source Sendgrid: migrate to low code #35776
Conversation
The latest updates on your projects. Learn more about Vercel for Git ↗︎
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I have not ran the connector myself yet. The code looks ok.
Notes:
- In
streams.py
,parse_response
might no longer be necessary. The only stream where it would be applied isContacts
, and that one downloads a CSV anyway. Let's remove it? - In
streams.py
,should_retry
has the same fate. It would only apply toContactsStream
, not sure how useful it is for just this stream. - The dockerImageTag in
metadata.yaml
is0.43
— I assume docker image tag should generally be the same as theversion
defined inmanifest.yaml
? Should we go with1.0
for both? 🚂
Ideas:
- Damn it would be good if you could click a button and open a cloud workspace with the yaml of this connector already loaded into it. Wouldn't quite work for Sendgrid because it's hybrid, but you get the idea — quickly jump to an environment where I can run a preview read and see if things work.
airbyte-integrations/connectors/source-sendgrid/source_sendgrid/manifest.yaml
Outdated
Show resolved
Hide resolved
airbyte-integrations/connectors/source-sendgrid/source_sendgrid/spec.json
Show resolved
Hide resolved
Connector version is in three spots at least:
They should all be the same. @alafanechere, what should we do about it? They should all be bumped consistently, and I would not be surprised if other connectors also have this borked. Can we apply the same principle we have in other spots with When we get all low-code connectors to be just the
At that point, we will only have one version declaration that would drive the other ones. |
airbyte-integrations/connectors/source-sendgrid/source_sendgrid/manifest.yaml
Show resolved
Hide resolved
airbyte-integrations/connectors/source-sendgrid/source_sendgrid/schemas/blocks.json
Show resolved
Hide resolved
airbyte-integrations/connectors/source-sendgrid/integration_tests/invalid_time.json
Show resolved
Hide resolved
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I left some comments for pagination, dead code in unit tests and params in spec. Also need update PR name according to conventions, bump version of the connector and add note to changelog.
airbyte-integrations/connectors/source-sendgrid/unit_tests/unit_test.py
Outdated
Show resolved
Hide resolved
airbyte-integrations/connectors/source-sendgrid/source_sendgrid/manifest.yaml
Show resolved
Hide resolved
airbyte-integrations/connectors/source-sendgrid/source_sendgrid/manifest.yaml
Outdated
Show resolved
Hide resolved
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
lgtm
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Nothing stands out as wrong to me — lgtm.
@@ -299,6 +299,8 @@ async def discovered_catalog_fixture( | |||
|
|||
output = await docker_runner.call_discover(config=connector_config) | |||
catalogs = [message.catalog for message in output if message.type == Type.CATALOG] | |||
if len(catalogs) == 0: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Is this just merged from master, or is this new?
airbyte-integrations/connectors/source-sendgrid/source_sendgrid/manifest.yaml
Show resolved
Hide resolved
- id | ||
schema_loader: | ||
type: InlineSchemaLoader | ||
schema: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM pending regression test results
Migrates sendgrid to mostly low code.
Breaking changes
apikey
->api_key
start_time
->start_date
start_date
now requiredunsubscribe_groups
stream has been removed. It was the same assuppression_groups
.single_sends
stream has been renamedsinglesend_stats
. This is closer to the data and API.segments
stream has been upgraded to use the new 2.0 API. The older one has been deprecated. The payload is a bit different.Other changes
singlesends
stream has been added to match the API.