airbyte-source-github 2.1.15.dev202603161151__tar.gz → 2.1.16__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (63) hide show
  1. {airbyte_source_github-2.1.15.dev202603161151 → airbyte_source_github-2.1.16}/PKG-INFO +1 -1
  2. {airbyte_source_github-2.1.15.dev202603161151 → airbyte_source_github-2.1.16}/pyproject.toml +1 -1
  3. {airbyte_source_github-2.1.15.dev202603161151 → airbyte_source_github-2.1.16}/source_github/source.py +1 -2
  4. {airbyte_source_github-2.1.15.dev202603161151 → airbyte_source_github-2.1.16}/source_github/spec.json +14 -0
  5. {airbyte_source_github-2.1.15.dev202603161151 → airbyte_source_github-2.1.16}/source_github/streams.py +4 -5
  6. {airbyte_source_github-2.1.15.dev202603161151 → airbyte_source_github-2.1.16}/README.md +0 -0
  7. {airbyte_source_github-2.1.15.dev202603161151 → airbyte_source_github-2.1.16}/source_github/__init__.py +0 -0
  8. {airbyte_source_github-2.1.15.dev202603161151 → airbyte_source_github-2.1.16}/source_github/backoff_strategies.py +0 -0
  9. {airbyte_source_github-2.1.15.dev202603161151 → airbyte_source_github-2.1.16}/source_github/config_migrations.py +0 -0
  10. {airbyte_source_github-2.1.15.dev202603161151 → airbyte_source_github-2.1.16}/source_github/constants.py +0 -0
  11. {airbyte_source_github-2.1.15.dev202603161151 → airbyte_source_github-2.1.16}/source_github/errors_handlers.py +0 -0
  12. {airbyte_source_github-2.1.15.dev202603161151 → airbyte_source_github-2.1.16}/source_github/github_schema.py +0 -0
  13. {airbyte_source_github-2.1.15.dev202603161151 → airbyte_source_github-2.1.16}/source_github/graphql.py +0 -0
  14. {airbyte_source_github-2.1.15.dev202603161151 → airbyte_source_github-2.1.16}/source_github/run.py +0 -0
  15. {airbyte_source_github-2.1.15.dev202603161151 → airbyte_source_github-2.1.16}/source_github/schemas/assignees.json +0 -0
  16. {airbyte_source_github-2.1.15.dev202603161151 → airbyte_source_github-2.1.16}/source_github/schemas/branches.json +0 -0
  17. {airbyte_source_github-2.1.15.dev202603161151 → airbyte_source_github-2.1.16}/source_github/schemas/collaborators.json +0 -0
  18. {airbyte_source_github-2.1.15.dev202603161151 → airbyte_source_github-2.1.16}/source_github/schemas/comments.json +0 -0
  19. {airbyte_source_github-2.1.15.dev202603161151 → airbyte_source_github-2.1.16}/source_github/schemas/commit_comment_reactions.json +0 -0
  20. {airbyte_source_github-2.1.15.dev202603161151 → airbyte_source_github-2.1.16}/source_github/schemas/commit_comments.json +0 -0
  21. {airbyte_source_github-2.1.15.dev202603161151 → airbyte_source_github-2.1.16}/source_github/schemas/commits.json +0 -0
  22. {airbyte_source_github-2.1.15.dev202603161151 → airbyte_source_github-2.1.16}/source_github/schemas/contributor_activity.json +0 -0
  23. {airbyte_source_github-2.1.15.dev202603161151 → airbyte_source_github-2.1.16}/source_github/schemas/deployments.json +0 -0
  24. {airbyte_source_github-2.1.15.dev202603161151 → airbyte_source_github-2.1.16}/source_github/schemas/events.json +0 -0
  25. {airbyte_source_github-2.1.15.dev202603161151 → airbyte_source_github-2.1.16}/source_github/schemas/issue_comment_reactions.json +0 -0
  26. {airbyte_source_github-2.1.15.dev202603161151 → airbyte_source_github-2.1.16}/source_github/schemas/issue_events.json +0 -0
  27. {airbyte_source_github-2.1.15.dev202603161151 → airbyte_source_github-2.1.16}/source_github/schemas/issue_labels.json +0 -0
  28. {airbyte_source_github-2.1.15.dev202603161151 → airbyte_source_github-2.1.16}/source_github/schemas/issue_milestones.json +0 -0
  29. {airbyte_source_github-2.1.15.dev202603161151 → airbyte_source_github-2.1.16}/source_github/schemas/issue_reactions.json +0 -0
  30. {airbyte_source_github-2.1.15.dev202603161151 → airbyte_source_github-2.1.16}/source_github/schemas/issue_timeline_events.json +0 -0
  31. {airbyte_source_github-2.1.15.dev202603161151 → airbyte_source_github-2.1.16}/source_github/schemas/issues.json +0 -0
  32. {airbyte_source_github-2.1.15.dev202603161151 → airbyte_source_github-2.1.16}/source_github/schemas/organizations.json +0 -0
  33. {airbyte_source_github-2.1.15.dev202603161151 → airbyte_source_github-2.1.16}/source_github/schemas/project_cards.json +0 -0
  34. {airbyte_source_github-2.1.15.dev202603161151 → airbyte_source_github-2.1.16}/source_github/schemas/project_columns.json +0 -0
  35. {airbyte_source_github-2.1.15.dev202603161151 → airbyte_source_github-2.1.16}/source_github/schemas/projects.json +0 -0
  36. {airbyte_source_github-2.1.15.dev202603161151 → airbyte_source_github-2.1.16}/source_github/schemas/projects_v2.json +0 -0
  37. {airbyte_source_github-2.1.15.dev202603161151 → airbyte_source_github-2.1.16}/source_github/schemas/pull_request_comment_reactions.json +0 -0
  38. {airbyte_source_github-2.1.15.dev202603161151 → airbyte_source_github-2.1.16}/source_github/schemas/pull_request_commits.json +0 -0
  39. {airbyte_source_github-2.1.15.dev202603161151 → airbyte_source_github-2.1.16}/source_github/schemas/pull_request_stats.json +0 -0
  40. {airbyte_source_github-2.1.15.dev202603161151 → airbyte_source_github-2.1.16}/source_github/schemas/pull_requests.json +0 -0
  41. {airbyte_source_github-2.1.15.dev202603161151 → airbyte_source_github-2.1.16}/source_github/schemas/releases.json +0 -0
  42. {airbyte_source_github-2.1.15.dev202603161151 → airbyte_source_github-2.1.16}/source_github/schemas/repositories.json +0 -0
  43. {airbyte_source_github-2.1.15.dev202603161151 → airbyte_source_github-2.1.16}/source_github/schemas/review_comments.json +0 -0
  44. {airbyte_source_github-2.1.15.dev202603161151 → airbyte_source_github-2.1.16}/source_github/schemas/reviews.json +0 -0
  45. {airbyte_source_github-2.1.15.dev202603161151 → airbyte_source_github-2.1.16}/source_github/schemas/shared/events/comment.json +0 -0
  46. {airbyte_source_github-2.1.15.dev202603161151 → airbyte_source_github-2.1.16}/source_github/schemas/shared/events/commented.json +0 -0
  47. {airbyte_source_github-2.1.15.dev202603161151 → airbyte_source_github-2.1.16}/source_github/schemas/shared/events/committed.json +0 -0
  48. {airbyte_source_github-2.1.15.dev202603161151 → airbyte_source_github-2.1.16}/source_github/schemas/shared/events/cross_referenced.json +0 -0
  49. {airbyte_source_github-2.1.15.dev202603161151 → airbyte_source_github-2.1.16}/source_github/schemas/shared/events/reviewed.json +0 -0
  50. {airbyte_source_github-2.1.15.dev202603161151 → airbyte_source_github-2.1.16}/source_github/schemas/shared/reaction.json +0 -0
  51. {airbyte_source_github-2.1.15.dev202603161151 → airbyte_source_github-2.1.16}/source_github/schemas/shared/reactions.json +0 -0
  52. {airbyte_source_github-2.1.15.dev202603161151 → airbyte_source_github-2.1.16}/source_github/schemas/shared/user.json +0 -0
  53. {airbyte_source_github-2.1.15.dev202603161151 → airbyte_source_github-2.1.16}/source_github/schemas/shared/user_graphql.json +0 -0
  54. {airbyte_source_github-2.1.15.dev202603161151 → airbyte_source_github-2.1.16}/source_github/schemas/stargazers.json +0 -0
  55. {airbyte_source_github-2.1.15.dev202603161151 → airbyte_source_github-2.1.16}/source_github/schemas/tags.json +0 -0
  56. {airbyte_source_github-2.1.15.dev202603161151 → airbyte_source_github-2.1.16}/source_github/schemas/team_members.json +0 -0
  57. {airbyte_source_github-2.1.15.dev202603161151 → airbyte_source_github-2.1.16}/source_github/schemas/team_memberships.json +0 -0
  58. {airbyte_source_github-2.1.15.dev202603161151 → airbyte_source_github-2.1.16}/source_github/schemas/teams.json +0 -0
  59. {airbyte_source_github-2.1.15.dev202603161151 → airbyte_source_github-2.1.16}/source_github/schemas/users.json +0 -0
  60. {airbyte_source_github-2.1.15.dev202603161151 → airbyte_source_github-2.1.16}/source_github/schemas/workflow_jobs.json +0 -0
  61. {airbyte_source_github-2.1.15.dev202603161151 → airbyte_source_github-2.1.16}/source_github/schemas/workflow_runs.json +0 -0
  62. {airbyte_source_github-2.1.15.dev202603161151 → airbyte_source_github-2.1.16}/source_github/schemas/workflows.json +0 -0
  63. {airbyte_source_github-2.1.15.dev202603161151 → airbyte_source_github-2.1.16}/source_github/utils.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: airbyte-source-github
3
- Version: 2.1.15.dev202603161151
3
+ Version: 2.1.16
4
4
  Summary: Source implementation for GitHub.
5
5
  Home-page: https://airbyte.com
6
6
  License: ELv2
@@ -3,7 +3,7 @@ requires = [ "poetry-core>=1.0.0",]
3
3
  build-backend = "poetry.core.masonry.api"
4
4
 
5
5
  [tool.poetry]
6
- version = "2.1.15.dev.202603161151"
6
+ version = "2.1.16"
7
7
  name = "airbyte-source-github"
8
8
  description = "Source implementation for GitHub."
9
9
  authors = [ "Airbyte <contact@airbyte.io>",]
@@ -9,7 +9,6 @@ from urllib.parse import urlparse
9
9
  from airbyte_cdk.models import FailureType
10
10
  from airbyte_cdk.sources import AbstractSource
11
11
  from airbyte_cdk.sources.streams import Stream
12
- from airbyte_cdk.sources.streams.http.http_client import MessageRepresentationAirbyteTracedErrors
13
12
  from airbyte_cdk.sources.streams.http.requests_native_auth import MultipleTokenAuthenticator
14
13
  from airbyte_cdk.utils.traced_exception import AirbyteTracedException
15
14
  from source_github.utils import MultipleTokenAuthenticatorWithRateLimiter
@@ -204,7 +203,7 @@ class SourceGithub(AbstractSource):
204
203
  )
205
204
  return True, None
206
205
 
207
- except MessageRepresentationAirbyteTracedErrors as e:
206
+ except AirbyteTracedException as e:
208
207
  user_message = self.user_friendly_error_message(e.message)
209
208
  return False, user_message or e.message
210
209
  except Exception as e:
@@ -149,6 +149,20 @@
149
149
  "predicate_key": ["credentials", "option_title"],
150
150
  "predicate_value": "OAuth Credentials",
151
151
  "oauth_config_specification": {
152
+ "oauth_connector_input_specification": {
153
+ "scopes": [
154
+ { "scope": "repo" },
155
+ { "scope": "read:org" },
156
+ { "scope": "read:repo_hook" },
157
+ { "scope": "read:user" },
158
+ { "scope": "read:project" },
159
+ { "scope": "read:discussion" },
160
+ { "scope": "workflow" }
161
+ ],
162
+ "consent_url": "https://github.com/login/oauth/authorize?{{client_id_param}}&{{redirect_uri_param}}&{{scopes_param}}&{{state_param}}",
163
+ "access_token_url": "https://github.com/login/oauth/access_token?{{client_id_param}}&{{client_secret_param}}&{{auth_code_param}}&{{redirect_uri_param}}",
164
+ "extract_output": ["access_token"]
165
+ },
152
166
  "complete_oauth_output_specification": {
153
167
  "type": "object",
154
168
  "additionalProperties": false,
@@ -22,7 +22,6 @@ from airbyte_cdk.sources.streams.core import CheckpointMixin, Stream
22
22
  from airbyte_cdk.sources.streams.http import HttpStream
23
23
  from airbyte_cdk.sources.streams.http.error_handlers import ErrorHandler, ErrorResolution, HttpStatusErrorHandler, ResponseAction
24
24
  from airbyte_cdk.sources.streams.http.exceptions import DefaultBackoffException, UserDefinedBackoffException
25
- from airbyte_cdk.sources.streams.http.http_client import MessageRepresentationAirbyteTracedErrors
26
25
  from airbyte_cdk.utils import AirbyteTracedException
27
26
  from airbyte_cdk.utils.datetime_helpers import ab_datetime_format, ab_datetime_parse
28
27
 
@@ -133,12 +132,12 @@ class GithubStreamABC(HttpStream, ABC):
133
132
  # Reading records while handling the errors
134
133
  try:
135
134
  yield from super().read_records(stream_slice=stream_slice, **kwargs)
136
- # HTTP Client wraps DefaultBackoffException into MessageRepresentationAirbyteTracedErrors
137
- except MessageRepresentationAirbyteTracedErrors as e:
135
+ # HTTP Client wraps DefaultBackoffException into AirbyteTracedException
136
+ except AirbyteTracedException as e:
138
137
  # This whole try/except situation in `read_records()` isn't good but right now in `self._send_request()`
139
138
  # function we have `response.raise_for_status()` so we don't have much choice on how to handle errors.
140
139
  # Bocked on https://github.com/airbytehq/airbyte/issues/3514.
141
- if not hasattr(e, "_exception") or not hasattr(e._exception, "response") or e._exception.response is None:
140
+ if not hasattr(e, "_exception") and not hasattr(e._exception, "response"):
142
141
  raise e
143
142
  if e._exception.response.status_code == requests.codes.NOT_FOUND:
144
143
  # A lot of streams are not available for repositories owned by a user instead of an organization.
@@ -1813,7 +1812,7 @@ class ContributorActivity(GithubStream):
1813
1812
  yield from super().read_records(stream_slice=stream_slice, **kwargs)
1814
1813
  # HTTP Client wraps BackoffException into MessageRepresentationAirbyteTracedErrors
1815
1814
  except MessageRepresentationAirbyteTracedErrors as e:
1816
- if hasattr(e, "_exception") and hasattr(e._exception, "response") and e._exception.response is not None:
1815
+ if hasattr(e, "_exception") and hasattr(e._exception, "response"):
1817
1816
  if e._exception.response.status_code == requests.codes.ACCEPTED:
1818
1817
  yield AirbyteMessage(
1819
1818
  type=MessageType.LOG,