1
0
mirror of synced 2025-12-21 02:51:29 -05:00
Commit Graph

71 Commits

Author SHA1 Message Date
Artem Inzhyyants
61a63ec2ff Source GitHub: add stream ProjectsV2 (#30731)
Co-authored-by: artem1205 <artem1205@users.noreply.github.com>
2023-09-28 08:46:29 +02:00
Artem Inzhyyants
e763971bf1 Source GitHub: Skip 404 error in TeamMemberShips stream (#30693) 2023-09-25 19:56:36 +02:00
Artem Inzhyyants
32c08d73d5 Source GitHub: support self hosted instances (#30647)
Co-authored-by: artem1205 <artem1205@users.noreply.github.com>
Co-authored-by: Serhii Lazebnyi <53845333+lazebnyi@users.noreply.github.com>
2023-09-22 19:36:50 +02:00
Artem Inzhyyants
1c89aeaa5b Source GitHub: add new stream Contributor Activity (#30615)
Co-authored-by: artem1205 <artem1205@users.noreply.github.com>
2023-09-22 11:50:44 +02:00
Serhii Chvaliuk
df79780cb8 Source Github: deprecate "page size" input parameter (#25838)
Signed-off-by: Sergey Chvalyuk <grubberr@gmail.com>
2023-05-24 12:20:08 +03:00
Roman Yermilov [GL]
ce9eb8ab4c Source Github: better error explanation for 401 (#26025)
* Source Github: better error explanation for 401

* Source Github: bump version, update changelog

* Source Github: fix test name

* Source Github: fix unittests

* Source Github: bump version

* auto-bump connector version

---------

Co-authored-by: Octavia Squidington III <octavia-squidington-iii@users.noreply.github.com>
2023-05-16 22:35:22 +04:00
Serhii Chvaliuk
5053b278f5 Source Github: fix caching for get_starting_point in stream "Commits" (#24398)
Signed-off-by: Sergey Chvalyuk <grubberr@gmail.com>
2023-03-27 13:13:01 +03:00
midavadim
1b2b0392ef 🎉 Source Github - added user friendly messages, added AirbyteTracedException config_error (#23467)
* added user friendly messages, added AirbyteTracedException config_error

* added formatting

* fixed 'if' condition

* removed HTTPError words from error examples

* changed http to https for all schemas

* removed http adapter

* updated expected record file - one record for each stream

* updated expected record file

* updated expected record file

* bumped connector version

* auto-bump connector version

---------

Co-authored-by: Octavia Squidington III <octavia-squidington-iii@users.noreply.github.com>
2023-03-03 18:32:14 +00:00
Cole Snodgrass
2e099acc52 update headers from 2022 -> 2023 (#22594)
* It's 2023!

* 2022 -> 2023

---------

Co-authored-by: evantahler <evan@airbyte.io>
2023-02-08 13:01:16 -08:00
Ella Rohm-Ensing
8fc76a5d3c Turn off default httpavailabilitystrategy for source-github (GA) (#22039)
* Turn off default for source-github (GA)

* Update github.md

* auto-bump connector version

---------

Co-authored-by: Octavia Squidington III <octavia-squidington-iii@users.noreply.github.com>
2023-01-28 02:25:58 +00:00
Serhii Chvaliuk
65fc1bcdf0 🎉 Source Github: IssueReactions - re-implemented using GraphQL (#21457)
Signed-off-by: Sergey Chvalyuk <grubberr@gmail.com>
2023-01-27 02:45:39 +02:00
Roman Yermilov [GL]
d1688c7287 Source GitHub: #970 handle 502 Bad Gateway (#21481)
* Source Github: handle 502 Bad Gateway with proper log message

* Source Github: bump version

* Source Github: update changelog for new 0.3.12 version

* auto-bump connector version

Co-authored-by: Octavia Squidington III <octavia-squidington-iii@users.noreply.github.com>
2023-01-19 19:27:30 +00:00
Ella Rohm-Ensing
8bb41282c5 CDK 0.15.0 and source-github 0.3.10 -- revert AvailabillityStrategy changes (#20523)
* Revert "source-github: move known error handling to GithubAvailabilityStrategy (#19978)"

This reverts commit f97db17ccc.

* Revert "🐛 Python CDK: fix `StopIteration` error for `check_availability` (#20429)"

This reverts commit 4e9b014277.

* Revert "CDK: `AbstractSource.read()` skips syncing stream if its unavailable (add `AvailabilityStrategy` concept) (#19977)"

This reverts commit 55a32886a3.

* Restore changelog entries

* bump CDK version

* Bump Github version

* Re-add removed dependencies

* auto-bump connector version

Co-authored-by: Octavia Squidington III <octavia-squidington-iii@users.noreply.github.com>
2022-12-15 14:24:24 -05:00
Ella Rohm-Ensing
f97db17ccc source-github: move known error handling to GithubAvailabilityStrategy (#19978)
* Rough first implememtation of AvailabilityStrategy s

* Basic unit tests for AvailabilityStrategy and ScopedAvailabilityStrategy

* Make availability_strategy a property, separate out tests

* Remove from DeclarativeSource, remove Source parameter from methods, make default no AvailabilityStrategy

* Add skip stream if not available to read()

* Changes to CDK to get source-github working using AvailabilityStrategy, flakecheck

* reorganize cdk class, add HTTPAvailabilityStrategy test

* cleanup, docstrings

* source-github working with availabilitystrategy

* reorganize source-github

* source-github: resolve deprecation warning

* use correct import for HTTPAvailabilitystrategy

* pull out error handling into separate method

* use handle_http_error method

* Pass source and logger to check_connection method

* Add documentation links, handle 403 specifically

* Fix circular import

* Add AvailabilityStrategy to Stream and HTTPStream classes

* Remove AS from abstract_source, add to Stream, HTTPStream, AvailabilityStrategy unit tests passing for per-stream strategies

* Modify MockHttpStream to set no AvailabilityStrategy since source test mocking doesn't support this

* Move AvailabilityStrategy class to sources.streams

* Move HTTPAvailabilityStrategy to http module

* Use pascal case for HttpAvailabilityStrategy

* Remove docs message method :( and default to True availability on unhandled HTTPErrors

* add check_availability method to stream class

* Add optional source parameter

* Add test for connector-specific documentation, small tests refactor

* Add test that performs the read() function for stream with default availability strategy

* Add test for read function behavior when stream is unavailable

* Add 403 info in logger message

* Don't return error for other HTTPErrors

* Split up error handling into methods 'unavailable_error_codes' and 'get_reason_for_error'

* rework overrideable list of status codes to be a dict with reasons, to enforce that users provide reasons for all listed errors

* Fix incorrect typing

* Move HttpAvailability to its own module, fix flake errors

* Fix ScopedAvailabilityStrategy, docstrings and types for streams/availability_strategy.py

* Docstrings and types for core.py and http/availability_strategy.py

* Move _get_stream_slices to a StreamHelper class

* Docstrings + types for stream_helpers.py, cleanup test_availability.py

* Clean up test_source.py

* Move logic of getting the initial record from a stream to StreamHelper class

* Add changelog and bump minor version

* change 'is True' and 'is False' behavior

* use mocker.MagicMock

* Remove ScopedAvailabilityStrategy

* Don't except non-403 errors, check_stream uses availability_strategy if possible

* Move AvailabilityStrategy to stream level, fix tests

* make get_stream_slice public

* Attempt to refactor error code handling into repository-based and organization-based

* split into repository-based availabilitystrategy and organization-based availabilitystrategy

* refactor organization-based availabilitystrategy

* refactor repository-based availabilitystrategy, create separate ones for workflow_runs and projects

* Fix workflow runs availability strategy

* move availability strategies to a different module

* CDK: pass error to reasons_for_error_codes

* make get_stream_slice public

* Revert "make get_stream_slice public"

This reverts commit 9170fe5f59.

* Add tests for raising unhandled errors and retries are handled

* Add tests for CheckStream via AvailabilityStrategy

* Remove moved file

* bump CDK dependency

* Cleanup: Address review comments

* One more fix

* Update changelog and dockerfile version
2022-12-14 16:58:15 -05:00
Serhii Chvaliuk
2e1209e78f Source Github: switch on airbyte-cdk==0.2.0 (#18213)
Signed-off-by: Sergey Chvalyuk <grubberr@gmail.com>
2022-10-20 15:16:58 +03:00
Serhii Chvaliuk
8e6fb793bb Source Github: Use default behaviour, retry on 429 and all 5XX errors (#17852)
Signed-off-by: Sergey Chvalyuk <grubberr@gmail.com>
2022-10-12 11:35:42 +03:00
Serhii Chvaliuk
f4374530e5 Source Github: improve 502 handling for comments stream (#17715)
Signed-off-by: Sergey Chvalyuk <grubberr@gmail.com>
2022-10-07 14:58:31 +03:00
Serhii Chvaliuk
8b4f65de9e Source Github: Skip repository if got HTTP 500 for WorkflowRuns stream (#17555)
Signed-off-by: Sergey Chvalyuk <grubberr@gmail.com>
2022-10-04 21:50:20 +03:00
Serhii Chvaliuk
a338df1040 🐛 Source Github: bugfix WorkflowJobs stream (#17287)
Signed-off-by: Sergey Chvalyuk <grubberr@gmail.com>
2022-09-30 14:45:25 +03:00
Denys Davydov
57c269d9c6 Source github: improve error logging (#16947)
* #410 oncall source github: improve error logging

* source github: upd changelog

* auto-bump connector version [ci skip]

Co-authored-by: Octavia Squidington III <octavia-squidington-iii@users.noreply.github.com>
2022-09-21 23:16:40 +03:00
Mainara Cavalcanti
97b9c74718 Source Github: add workflow_jobs stream (#16534)
* feat(workflow-jobs)!: new class 'WorkflowJobs' to get job informations from Github;

* feat(workflow-jobs)!: unit test to new class 'WorkflowJobs';

* feat(test_stream/test_stream_workflow_jobs_read_incremental)!: support to method incremetal in unit test to class 'WorkflowJobs';

* feat(test_workflow): unit test incremental and full refresh to class 'WorkflowJobs';

* docs: updated github docs

* docs: updated github docs

* docs: updated github.md

* docs: updated github.md

* fix: add workflow_jobs in abnormal tests, use 'start date' in source and unit test;

* fix: add workflow_jobs in 'abnormal_state.json' and 'sample_state.json' for integration tests;

Co-authored-by: Paulo Roberto <paulo.rb.beserra@gmail.com>
Co-authored-by: Paulo Roberto <71179739+py-paulo@users.noreply.github.com>
2022-09-21 10:19:35 -04:00
Cameron Yick
9d44dc205b 🐛 Source Github: handle case where user is None (#15420)
* fix(source-github): handle case where user is None

Signed-off-by: Sergey Chvalyuk <grubberr@gmail.com>
Co-authored-by: Marcos Marx <marcosmarxm@users.noreply.github.com>
Co-authored-by: Sergey Chvalyuk <grubberr@gmail.com>
2022-08-12 10:29:13 +03:00
Serhii Chvaliuk
ae58fa52da 🎉 Source Github: PullRequestCommentReactions - re-implemented using GraphQL (#14795)
Signed-off-by: Sergey Chvalyuk <grubberr@gmail.com>
2022-08-02 14:57:27 +03:00
Serhii Chvaliuk
38d8d60f02 🎉 Source Github: add Retry for GraphQL API Resource limitations (#14376)
Signed-off-by: Sergey Chvalyuk <grubberr@gmail.com>
2022-07-05 00:37:39 +03:00
Serhii Chvaliuk
05e505d1af Revert "🎉 Source Github: rename field mergeable to is_mergeable (#14274)" (#14338)
* Revert "🎉 Source Github: rename field `mergeable` to `is_mergeable` (#14274)"
2022-07-02 02:19:29 +03:00
Serhii Chvaliuk
2fa29a2ca4 🎉 Source Github: rename field mergeable to is_mergeable (#14274)
Signed-off-by: Sergey Chvalyuk <grubberr@gmail.com>
2022-06-30 20:09:39 +03:00
Serhii Chvaliuk
4072d46a7c 🎉 Source Github: use GraphQL for reviews stream (#13989)
Signed-off-by: Sergey Chvalyuk <grubberr@gmail.com>
2022-06-28 18:35:12 +03:00
Serhii Chvaliuk
7a15f2d4a5 🎉 Source Github: secondary rate limits has to retry (#13955)
Signed-off-by: Sergey Chvalyuk <grubberr@gmail.com>
2022-06-27 23:36:20 +03:00
Serhii Chvaliuk
f69a78c9a4 🎉 Source Github: break point added for workflows_runs stream (#13926)
Signed-off-by: Sergey Chvalyuk <grubberr@gmail.com>
2022-06-22 11:49:04 +03:00
Serhii Chvaliuk
62626ee690 🎉 Source Github: use GraphQL for pull_request_stats stream (#13763)
Signed-off-by: Sergey Chvalyuk <grubberr@gmail.com>
2022-06-16 20:18:49 +03:00
Serhii Chvaliuk
dd8aa06664 🎉 Source Github: Fix API sorting, fix get_starting_point caching (#13707)
Signed-off-by: Sergey Chvalyuk <grubberr@gmail.com>
2022-06-15 16:50:42 +03:00
Serhii Chvaliuk
9a4582ad7d 🐛 Source Github: enable caching only for parent streams (#13558)
Signed-off-by: Sergey Chvalyuk <grubberr@gmail.com>
2022-06-09 07:21:10 +03:00
Serhii Chvaliuk
38fa0fa8b3 🐛 Source Github: improve docs for GA (#13593)
Signed-off-by: Sergey Chvalyuk <grubberr@gmail.com>
2022-06-08 20:19:11 +03:00
Serhii Chvaliuk
5444317513 🐛 Source Github: fix different result from get_starting_point when reading by pages (#13531)
Signed-off-by: Sergey Chvalyuk <grubberr@gmail.com>
2022-06-08 20:06:06 +03:00
Serhii Chvaliuk
c10a268bde 🐛 Source Github: add incremental for WorkflowRuns (#13115)
* add incremental for `workflowruns`

Signed-off-by: Sergey Chvalyuk <grubberr@gmail.com>
2022-05-27 21:01:28 +03:00
Marcos Marx
dca2256a7c Bump 2022 license version (#13233)
* Bump year in license short to 2022

* remove protocol from cdk
2022-05-26 15:00:42 -03:00
Serhii Chvaliuk
8c394b3734 🐛 Source Github: add incremental for repositories, workflows, pull_request_comment_reactions, issue_reactions, issue_comment_reactions, commit_comment_reactions (#12294)
Signed-off-by: Sergey Chvalyuk <grubberr@gmail.com>
2022-05-13 21:18:24 +03:00
Serhii Chvaliuk
8cf45693b1 🐛 Source Github: add new streams TeamMembers, TeamMemberships (#11893)
Signed-off-by: Sergey Chvalyuk <grubberr@gmail.com>
2022-04-21 18:50:56 +03:00
Serhii Chvaliuk
e9946c9be3 Source Github: re-implement incremental for reviews stream (#11623)
Signed-off-by: Sergey Chvalyuk <grubberr@gmail.com>
2022-04-02 01:11:19 +03:00
Serhii Chvaliuk
b75295a368 Source Github: get_updated_state problem on reviews stream (#11567)
* Improve error handling for `reviews` stream

Signed-off-by: Sergey Chvalyuk <grubberr@gmail.com>
2022-03-31 11:05:54 +03:00
Amin Bz
a203d685b3 🎉 Source Github: add 2 new streams (workflows, workflow runs) (#9251)
* 3 new streams to the github api and adding task_id in the stories stream for the connector asana

* pull request update bump version GitHub Asana

* correct schema

* remove changes on asana connector - moved to another pull request

* security alert stream add variable

* bump version github

* fix schema

* fix schemad

* solve conflic

* correct teams stream

* remove stream and fix some files

* remove config catalog

* correct schema

* solve fb conflict

* solve final conflict with files

* correct github streams

* correct assignes in config_catalog

* update docs and bump connector version

Co-authored-by: Marcos Marx <marcosmarxm@gmail.com>
2022-03-30 20:53:16 -03:00
Serhii Chvaliuk
0f475ce6ff 🐛 Source Github: test coverage more than 90% (#10967)
Signed-off-by: Sergey Chvalyuk <grubberr@gmail.com>
2022-03-19 13:14:53 +02:00
Davin Chia
5a575e42e0 Format connectors. (#11231) 2022-03-17 19:08:01 +08:00
Serhii Chvaliuk
d19754c169 🐛 Source Github: Fix error handling for 404 streams (#10878)
* Fix, no error if "Projects" feature is disabled
* improve requests.codes.NOT_FOUND

Signed-off-by: Sergey Chvalyuk <grubberr@gmail.com>
2022-03-10 18:02:51 +02:00
Serhii Chvaliuk
1bf94704fc 🐛 Source Github: add new stream ProjectCards (#10766)
* add new stream `Deployments`

Signed-off-by: Sergey Chvalyuk <grubberr@gmail.com>
2022-03-10 11:01:51 +02:00
Serhii Chvaliuk
b2aa69574c 🐛 Source Github: add new streams Deployments, ProjectColumns, PullRequestCommits (#10385)
Signed-off-by: Sergey Chvalyuk <grubberr@gmail.com>
2022-03-03 21:07:17 +02:00
Yevhenii
f01b0c769f 🎉 Source Github: add handling the secondary rate limits (#10193)
* Source Github: add handling the secondary rate limits
2022-02-09 15:26:53 +02:00
Anna Lvova
8749c7ab2c 🐛Source Github: remove BAD_GATEWAY code from backoff_time (#9999)
* remove BAD_GATEWAY code from backoff_time

* bump version

* bump version

* add unit test

* bump version
2022-02-09 12:10:16 +02:00
Baz
981df9c4ed 🐛 Source Github: log the error message for streams that are restricted for OAuth (#9868) 2022-02-02 14:12:47 +02:00
Yevhenii
2ddf0bcf65 🐛 Source Github: add custom pagination size for large streams (#9664)
* Source Github: add custom pagination size for large streams
2022-01-21 15:22:16 +02:00