diff --git a/s3fs/core.py b/s3fs/core.py index 6b80ad89..6b02da83 100644 --- a/s3fs/core.py +++ b/s3fs/core.py @@ -813,6 +813,8 @@ async def _iterdir( self._fill_info(c, bucket, versions=False) yield c for c in i.get(contents_key, []): + if c["Size"] == 0 and c["Key"] == i.get("Prefix", ""): + continue # skip an entity that is the current directory if not self.version_aware or c.get("IsLatest") or versions: c["type"] = "file" c["size"] = c["Size"]