tap-github icon indicating copy to clipboard operation
tap-github copied to clipboard

Stitch - Projects (classic) has been deprecated in favor of the new Projects experience

Open gniquil opened this issue 9 months ago • 0 comments

Our Stitch integration has been failing due to Github sunsetted the projects api. However, in our company, we don't use projects. Is it possible to bypass this as a short term fix?

HTTP-error-code: 410, Error: {'message': 'Projects (classic) has been deprecated in favor of the new Projects experience.', 'documentation_url': 'https://docs.github.com/en/issues/planning-and-tracking-with-projects/automating-your-project/using-the-api-to-manage-projects', 'status': '410'}

Here's the log around the error:

2025-04-11 23:06:08,265Z    tap - INFO HTTP request to "issues" endpoint took 0.110s, returned status code 200
2025-04-11 23:06:08,266Z    tap - INFO replicated 0 records from "issues" endpoint
2025-04-11 23:06:08,268Z    tap - INFO Final url is: https://api.github.com/repos/tenantopia/shrike/projects?state=all
2025-04-11 23:06:08,271Z   main - INFO State update: adding currently_syncing = null
2025-04-11 23:06:08,331Z    tap - INFO METRIC Point(metric_type='timer', metric='http_request_duration', value=0.0616912841796875, tags={'endpoint': 'projects', 'status': 'failed'})
2025-04-11 23:06:08,331Z    tap - INFO replicated 0 records from "projects" endpoint
2025-04-11 23:06:08,331Z    tap - CRITICAL HTTP-error-code: 410, Error: {'message': 'Projects (classic) has been deprecated in favor of the new Projects experience.', 'documentation_url': 'https://docs.github.com/en/issues/planning-and-tracking-with-projects/automating-your-project/using-the-api-to-manage-projects', 'status': '410'}
2025-04-11 23:06:08,331Z    tap - Traceback (most recent call last):
2025-04-11 23:06:08,331Z    tap -   File "/code/orchestrator/tap-env/bin/tap-github", line 8, in <module>
2025-04-11 23:06:08,331Z    tap -     sys.exit(main())
2025-04-11 23:06:08,331Z    tap -   File "/code/orchestrator/tap-env/lib/python3.9/site-packages/singer/utils.py", line 229, in wrapped
2025-04-11 23:06:08,331Z    tap -     return fnc(*args, **kwargs)
2025-04-11 23:06:08,331Z    tap -   File "/code/orchestrator/tap-env/lib/python3.9/site-packages/tap_github/__init__.py", line 39, in main
2025-04-11 23:06:08,331Z    tap -     _sync(client, config, state, catalog)
2025-04-11 23:06:08,331Z    tap -   File "/code/orchestrator/tap-env/lib/python3.9/site-packages/tap_github/sync.py", line 209, in sync
2025-04-11 23:06:08,331Z    tap -     do_sync(catalog, streams_to_sync_for_repos, selected_stream_ids, client, start_date, state, repo)
2025-04-11 23:06:08,331Z    tap -   File "/code/orchestrator/tap-env/lib/python3.9/site-packages/tap_github/sync.py", line 231, in do_sync
2025-04-11 23:06:08,331Z    tap -     state = stream_obj.sync_endpoint(client = client,
2025-04-11 23:06:08,331Z    tap -   File "/code/orchestrator/tap-env/lib/python3.9/site-packages/tap_github/streams.py", line 297, in sync_endpoint
2025-04-11 23:06:08,331Z    tap -     for response in client.authed_get_all_pages(
2025-04-11 23:06:08,331Z    tap -   File "/code/orchestrator/tap-env/lib/python3.9/site-packages/tap_github/client.py", line 227, in authed_get_all_pages
2025-04-11 23:06:08,331Z    tap -     r = self.authed_get(source, url, headers, stream, should_skip_404)
2025-04-11 23:06:08,331Z    tap -   File "/code/orchestrator/tap-env/lib/python3.9/site-packages/backoff/_sync.py", line 94, in retry
2025-04-11 23:06:08,331Z    tap -     ret = target(*args, **kwargs)
2025-04-11 23:06:08,331Z    tap -   File "/code/orchestrator/tap-env/lib/python3.9/site-packages/tap_github/client.py", line 211, in authed_get
2025-04-11 23:06:08,331Z    tap -     raise_for_error(resp, source, stream, self, should_skip_404)
2025-04-11 23:06:08,331Z    tap -   File "/code/orchestrator/tap-env/lib/python3.9/site-packages/tap_github/client.py", line 129, in raise_for_error
2025-04-11 23:06:08,331Z    tap -     raise exc(message) from None
2025-04-11 23:06:08,331Z    tap - tap_github.client.GithubException: HTTP-error-code: 410, Error: {'message': 'Projects (classic) has been deprecated in favor of the new Projects experience.', 'documentation_url': 'https://docs.github.com/en/issues/planning-and-tracking-with-projects/automating-your-project/using-the-api-to-manage-projects', 'status': '410'}
2025-04-11 23:06:08,356Z   main - INFO State update: changing currently_syncing from null to "projects"
2025-04-11 23:06:08,356Z target - INFO Requests complete, stopping loop
2025-04-11 23:06:08,394Z   main - INFO Target exited normally with status 0
2025-04-11 23:06:08,397Z   main - INFO No tunnel subprocess to tear down
2025-04-11 23:06:08,397Z   main - INFO Exit status is: Discovery succeeded. Tap failed with code 1 and error message: "HTTP-error-code: 410, Error: {'message': 'Projects (classic) has been deprecated in favor of the new Projects experience.', 'documentation_url': 'https://docs.github.com/en/issues/planning-and-tracking-with-projects/automating-your-project/using-the-api-to-manage-projects', 'status': '410'}". Target succeeded.

gniquil avatar Apr 11 '25 23:04 gniquil