-
Notifications
You must be signed in to change notification settings - Fork 4.1k
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 Intercom: Added conversation_id field to conversation_part records #11206
🎉 Source Intercom: Added conversation_id field to conversation_part records #11206
Conversation
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.
Thank you for your contribution @lgomezm! I made a minor suggestion. I'll run the acceptance tests and will approve/request changes according to results 🥁
if 'conversation_id' not in conversation_part: | ||
conversation_part['conversation_id'] = conversation_id |
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.
if 'conversation_id' not in conversation_part: | |
conversation_part['conversation_id'] = conversation_id | |
conversation_part.setdefault("conversation_id", "conversation_id") |
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.
Done in c88184b.
/test connector=connectors/source-intercom
|
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.
@lgomezm the tests are failing because you did not run ./gradlew format
. Please run it and push the changes. You'll have to rename the unit test you declared to make the flake test pass. I'm ready to merge it afterward.
@@ -76,3 +76,35 @@ def test_switch_to_standard_endpoint_if_scroll_expired(requests_mock): | |||
records += list(stream1.read_records(sync_mode=SyncMode, stream_slice=slice)) | |||
|
|||
assert stream1._endpoint_type == Companies.EndpointType.standard | |||
|
|||
|
|||
def test_switch_to_standard_endpoint_if_scroll_expired(requests_mock): |
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.
This test is badly named and another these already has this name.
def test_switch_to_standard_endpoint_if_scroll_expired(requests_mock): | |
def test_conversation_part_has_conversation_id(requests_mock): |
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.
Good catch! Updated in 8aebb16
@alafanechere I've addressed your comments and ran |
/test connector=connectors/source-intercom
|
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.
@lgomezm I'm ready to publish the new version. Could you please bump the version number in:
airbyte-integrations/connectors/source-intercom/Dockerfile
airbyte-config/init/src/main/resources/seed/source_definitions.yaml
Please also update the changelog in docs/integrations/sources/intercom.md
.
I'll then run the publish command from the comments. Afterward you need to locally run ./gradlew airbyte-config:init:processResources
. This will update the /Users/augustin/workspace/airbyte/airbyte-config/init/src/main/resources/seed/source_specs.yaml
, please then commit this file.
I would have liked to do this myself but as I don't have push permission on your organization fork I need to ask you to do this 😄
35e3909
to
70216ed
Compare
@alafanechere In 70216ed, I've updated:
Please let me know when you publish, so I can run that final gradle command and push the changes again. |
/publish connector=connectors/source-intercom
|
@lgomezm the connector is published, please run |
@alafanechere Done. |
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.
Thank you for this contrib @lgomezm !
What
Records from the
ConversationParts
stream don't haveconversation_id
, so in a scenario where a connection is configured to syncconversations
andconversation_parts
, there is no hay to determine whatconversation_parts
belong to whatconversations
at the destination.How
Added the
conversation_id
property to the records yielded by theConversationParts
stream.Recommended reading order
source.py
unit_test.py
🚨 User Impact 🚨
Are there any breaking changes? What is the end result perceived by the user? If yes, please merge this PR with the 🚨🚨 emoji so changelog authors can further highlight this if needed.
Pre-merge Checklist
Expand the relevant checklist and delete the others.
New Connector
Community member or Airbyter
airbyte_secret
./gradlew :airbyte-integrations:connectors:<name>:integrationTest
.README.md
bootstrap.md
. See description and examplesdocs/SUMMARY.md
docs/integrations/<source or destination>/<name>.md
including changelog. See changelog exampledocs/integrations/README.md
airbyte-integrations/builds.md
Airbyter
If this is a community PR, the Airbyte engineer reviewing this PR is responsible for the below items.
/test connector=connectors/<name>
command is passing/publish
command described hereUpdating a connector
Community member or Airbyter
airbyte_secret
./gradlew :airbyte-integrations:connectors:<name>:integrationTest
.README.md
bootstrap.md
. See description and examplesdocs/integrations/<source or destination>/<name>.md
including changelog. See changelog exampleAirbyter
If this is a community PR, the Airbyte engineer reviewing this PR is responsible for the below items.
/test connector=connectors/<name>
command is passing/publish
command described hereConnector Generator
-scaffold
in their name) have been updated with the latest scaffold by running./gradlew :airbyte-integrations:connector-templates:generator:testScaffoldTemplates
then checking in your changesTests
Unit
Put your unit tests output here.
Integration
Put your integration tests output here.
Acceptance
Put your acceptance tests output here.