-
Notifications
You must be signed in to change notification settings - Fork 0
Open
Description
Implement retry logic or remove unused max_retries and retry_delay fields.
The RmOptions struct declares max_retries and retry_delay fields that are never used in the implementation. Users can pass these options, but they will be silently ignored, creating an API surface inconsistency with the promised functionality.
Either implement the retry logic (wrapping operations in a retry loop with exponential backoff based on these options) or remove these fields from RmOptions to avoid misleading users.
Implementation guidance
If implementing retry logic, wrap the operations in remove_recursive with a retry loop that:
- Catches transient filesystem errors (e.g.,
PermissionDenied,ResourceBusy) - Retries up to
max_retriestimes withretry_delaymilliseconds between attempts - Only retries on errors that are likely transient, not permanent failures like
ENOENT
Originally posted by @coderabbitai[bot] in #2 (comment)
Metadata
Metadata
Assignees
Labels
No labels