Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

wip: start implementing chain functionality #346

Draft
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

ap--
Copy link
Collaborator

@ap-- ap-- commented Mar 16, 2025

Draft PR for starting implementation for fsspec urlpath chain support.

  • UPath should start relying on CurrentChainSegment to store path, protocol, and storage_options.
  • Need to think through if by default, the target protocol should be the first or last protocol used in the chain
  • There needs to be some way to select which chain segment UPath will operate on
    >>> p0 = UPath("zip://abc/efg.csv::s3://bucket/file.zip")
    >>> p0
    S3Path("zip://abc/efg.csv::s3://bucket/file.zip")
    >>> p1 = p0.chain[-2]  # maybe this?
    >>> p1 = p0.chain_target("zip")  # or maybe this?
    >>> p1
    ZipPath("zip://abc/efg.csv::s3://bucket/file.zip")
  • We need to figure out how filesystems that just pass the path through show up. For example SimpleCache path semantics should adhere to the downstream path semantics... (ChainSegment.path can be None for detecting these cases)

@ap-- ap-- marked this pull request as draft March 16, 2025 08:51
@emfdavid emfdavid mentioned this pull request Mar 18, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant