-
Notifications
You must be signed in to change notification settings - Fork 4.3k
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 Stripe : Remove Updated field from schemas #4980
Source Stripe : Remove Updated field from schemas #4980
Conversation
…atalogs, update acceptance-test-config.yml
Please rebase this change on latest master. Your SAT run would fail w/o it. |
…/source-stripe-use-updated-instead-of-created-for-cursor-values � Conflicts: � airbyte-integrations/connectors/source-stripe/integration_tests/non_disputes_events_catalog.json � airbyte-integrations/connectors/source-stripe/integration_tests/non_invoice_line_items_catalog.json � airbyte-integrations/connectors/source-stripe/integration_tests/subscription_catalog.json � airbyte-integrations/connectors/source-stripe/source_stripe/schemas/customers.json � airbyte-integrations/connectors/source-stripe/source_stripe/schemas/fullschema.json
…/source-stripe-use-updated-instead-of-created-for-cursor-values � Conflicts: � airbyte-integrations/connectors/source-stripe/integration_tests/non_disputes_events_catalog.json � airbyte-integrations/connectors/source-stripe/integration_tests/non_invoice_line_items_catalog.json
…/source-stripe-use-updated-instead-of-created-for-cursor-values
/test connector=connectors/source-stripe
|
} | ||
} | ||
}, | ||
"json_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.
In normalization, we expect streams in catalog to always have json_schema.properties
otherwise we raise exceptions:
Line 143 in 953744a
properties = get_field(get_field(stream_config, "json_schema", message), "properties", message) |
Why are we sending streams with empty schemas for?
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.
@ChristopheDuong
In this case, we use configured_catalog.json
for Acceptance Tests, and in order not to duplicate the scheme once again, a processing has been created that pulls up the scheme for each stream from the streams/
directory.
You can see it here.
In your case, we get a catalog that is located in the f"resources/{catalog_file}.json"
file. I am not very competent in this code, since I have not worked with it, but I suspect that these catalogs were created using the discover
command and placed in the resources/
directory, and json_schema
is always present there.
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.
Oh i see, that's how the tests are done here, ok!
I was just worried that sources would produce streams with empty properties as it already happened in the past as shown recently in this thread:
https://airbytehq.slack.com/archives/C01MFR03D5W/p1627044823226100
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.
No no, this is a different case. This practice of using catalogs
without json_schema
for Acceptance Tests is not new, it has been used for about month for sure with different connectors.
/publish connector=connectors/source-stripe
|
What
closes #4921.
How
Describe the solution
Recommended reading order
x.java
y.python
Pre-merge Checklist
Expand the checklist which is relevant for this PR.
Connector checklist
airbyte_secret
in the connector's spec./gradlew :airbyte-integrations:connectors:<name>:integrationTest
./test connector=connectors/<name>
command as documented here is passing.README.md
docs/SUMMARY.md
if it's a new connectordocs/integrations/<source or destination>/<name>
.docs/integrations/...
. See changelog exampledocs/integrations/README.md
contains a reference to the new connector/publish
command described hereConnector Generator checklist
-scaffold
in their name) have been updated with the latest scaffold by running./gradlew :airbyte-integrations:connector-templates:generator:testScaffoldTemplates
then checking in your changes