Skip to content

feat: re-export apify-client errors from apify.errors#990

Open
vdusek wants to merge 10 commits into
masterfrom
feat/error-taxonomy
Open

feat: re-export apify-client errors from apify.errors#990
vdusek wants to merge 10 commits into
masterfrom
feat/error-taxonomy

Conversation

@vdusek

@vdusek vdusek commented Jun 16, 2026

Copy link
Copy Markdown
Contributor

Description

Adds an apify.errors module that re-exports the apify_client error hierarchy, so SDK users have a single import location for every error the SDK can surface. The SDK raises these client exceptions as-is and does not wrap them.

Actor.call and Actor.call_task keep returning the finished run regardless of status. Check run.status to react to a failed run.

A new "Error handling" concept page maps every layer of exceptions an Actor can hit:

  • API client errors (ApifyApiError and its status-code subclasses).
  • The standard RuntimeError, ValueError, TypeError, and ConnectionError the SDK raises for misuse and invalid input.
  • Run-status checking after Actor.call and Actor.call_task.
  • The pay-per-event charge limit, which is a return value rather than an exception.
  • Short mention of errors while crawling and links Crawlee docs.

Issue

Closes #988

@vdusek vdusek added the t-tooling Issues with this label are in the ownership of the tooling team. label Jun 16, 2026
@vdusek vdusek self-assigned this Jun 16, 2026
@github-actions github-actions Bot added this to the 143rd sprint - Tooling team milestone Jun 16, 2026
@github-actions github-actions Bot added the tested Temporary label used only programatically for some analytics. label Jun 16, 2026
@codecov

codecov Bot commented Jun 16, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 91.61%. Comparing base (482e725) to head (773a242).
⚠️ Report is 3 commits behind head on master.

Additional details and impacted files
@@           Coverage Diff           @@
##           master     #990   +/-   ##
=======================================
  Coverage   91.61%   91.61%           
=======================================
  Files          49       50    +1     
  Lines        3171     3174    +3     
=======================================
+ Hits         2905     2908    +3     
  Misses        266      266           
Flag Coverage Δ
e2e 35.66% <0.00%> (-0.04%) ⬇️
integration 56.36% <0.00%> (-0.06%) ⬇️
unit 80.52% <100.00%> (+0.01%) ⬆️

Flags with carried forward coverage won't be shown. Click here to find out more.

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@vdusek vdusek force-pushed the feat/error-taxonomy branch from 082f090 to 4d36162 Compare June 16, 2026 11:58
@vdusek vdusek changed the title feat: Add apify.errors domain-level error taxonomy feat: add apify.errors with Actor run errors and re-exported client errors Jun 19, 2026
@vdusek vdusek changed the title feat: add apify.errors with Actor run errors and re-exported client errors feat: re-export apify-client errors from apify.errors Jun 19, 2026
@vdusek vdusek requested a review from Pijukatel June 19, 2026 15:48
@vdusek vdusek marked this pull request as ready for review June 19, 2026 15:48
@vdusek vdusek requested a review from szaganek as a code owner June 19, 2026 15:48
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

t-tooling Issues with this label are in the ownership of the tooling team. tested Temporary label used only programatically for some analytics.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Add apify.errors: domain-level error taxonomy over apify-client exceptions

2 participants