-
Notifications
You must be signed in to change notification settings - Fork 3.8k
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 FreshCaller: fix spec type check #26065
Source FreshCaller: fix spec type check #26065
Conversation
Before Merging a Connector Pull RequestWow! What a great pull request you have here! 🎉 To merge this PR, ensure the following has been done/considered for each connector added or updated:
If the checklist is complete, but the CI check is failing,
|
/test connector=connectors/source-freshcaller
|
/test connector=connectors/source-freshcaller
Build PassedTest summary info:
|
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.
Hey @artem1205 I'd appreciate a bit more context explaining why this change is solving the issue you linked and why it's backward incompatible?
backward_compatibility_tests_config: | ||
disable_for_version: 0.1.0 # Fix start_date type |
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.
Were the backward compatibility tests failing before this change? I'm not sure the change you made are actually backward incompatible? What was the default type stored for date before you specifically declare it's a string?
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.
Start_date
field was not declared as a string in jsonschema, but was rendered as a string in UI.
This possible caused a pattern validation error (see screenshot from #25688)
error without disabling:
@@ -126,15 +126,15 @@ def stream_slices(self, stream_state: Mapping[str, Any] = None, **kwargs) -> Ite | |||
...] | |||
""" | |||
start_date = pendulum.parse(self.start_date).in_timezone("UTC") | |||
end_date = pendulum.utcnow().subtract(minutes=self.sync_lag_minutes) # have a safe lag | |||
end_date = pendulum.now("UTC").subtract(minutes=self.sync_lag_minutes) # have a safe lag |
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.
Why is this change required?
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've bumped airbyte-cdk
to ~=0.2
and removed pendulum in setup.py
.
In Pendulum utcnow()
is deprecated since 2.0.0
Description updated. It is potentially backward compatible, as there was not any info about the type in 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.
Thank you I think I now understand clearly the reason of the change. I hoped this issue to improve spec testing as you suggested
/publish connector=connectors/source-freshcaller
if you have connectors that successfully published but failed definition generation, follow step 4 here |
* Source FreshCaller: fix spec type check * Source FreshCaller: update docs * Source FreshCaller: fix schemas * Source FreshCaller: reformat * Source FreshCaller: bump version minor * Source FreshCaller: update metadata
What
Resolve #25688
Handle config errors for
start_date
Start_date
field was not declared as astring
injsonschema
, but was rendered as a string in UI.This may have caused a problem with validation (see screenshot from #25688)
How
Fix spec type for
start_date
Recommended reading order
y.python
🚨 User Impact 🚨
no breaking changes
Pre-merge Actions
Updating a connector
Community member or Airbyter
Airbyter
If this is a community PR, the Airbyte engineer reviewing this PR is responsible for the below items.