Skip to content

Conversation

martindurant
Copy link
Member

Fixes #988

@ischurov , can you try this?

@ischurov
Copy link

ischurov commented Oct 7, 2025

Now I have this output (for the same example as here):

s3fs.__version__='2024.10.0+31.ge8f64a8'
['<test bucket>/a/', '<test bucket>/b', '<test bucket>/b/', '<test bucket>/c/']

Note that the output still differs from what I see if I do not invoke s3.find before s3.ls:

s3fs.__version__='2024.10.0+31.ge8f64a8'
['<test bucket>/a', '<test bucket>/b', '<test bucket>/c']

I don't know whether it is expected behavior or not.

Also, my initial problem with missing directories is still present.

@martindurant
Copy link
Member Author

Hmm, I'll try again when I have the time. I agree the two outputs should be the same... Whether ls() should show the placeholders, I'm not sure, since there're not "within" the listed directory (i.e., "<listed_path>/..."). I should definitely have tests around this!

@martindurant
Copy link
Member Author

@ischurov , the latest commit is my reproducer, so now I should have something concrete I can fix. Part of the problem, is that s3fs will not create any file ending in "/". That seems like a sane, if accidental, safeguard, but also inconvenient for some people.

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.

glob with ** leads to incorrect listings_cache state (missing and duplicated directories listings)

2 participants