Skip to content

Commit 9a75588

Browse files
committed
Return version_id even if file is empty
1 parent 1f8e716 commit 9a75588

File tree

1 file changed

+6
-1
lines changed

1 file changed

+6
-1
lines changed

s3fs/core.py

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -718,7 +718,9 @@ def touch(self, path, truncate=True, data=None, **kwargs):
718718
if not truncate and self.exists(path):
719719
raise ValueError("S3 does not support touching existent files")
720720
try:
721-
self.call_s3(self.s3.put_object, kwargs, Bucket=bucket, Key=key)
721+
write_result = self.call_s3(self.s3.put_object, kwargs, Bucket=bucket, Key=key)
722+
if self.version_aware:
723+
self.version_id = write_result.get("VersionId")
722724
except ClientError as ex:
723725
raise translate_boto_error(ex) from ex
724726
self.invalidate_cache(self._parent(path))
@@ -1708,6 +1710,9 @@ def commit(self):
17081710
logger.debug("Empty file committed %s" % self)
17091711
self._abort_mpu()
17101712
self.fs.touch(self.path)
1713+
if self.fs.version_aware and self.fs.version_id:
1714+
self.version_id = self.fs.version_id
1715+
17111716
elif not self.parts:
17121717
if self.buffer is not None:
17131718
logger.debug("One-shot upload of %s" % self)

0 commit comments

Comments
 (0)