Skip to content

Commit 3219f40

Browse files
committed
Add supports partial writes description
1 parent 94542d3 commit 3219f40

File tree

1 file changed

+17
-1
lines changed

1 file changed

+17
-1
lines changed

docs/developers/store_permissions.md

Lines changed: 17 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,18 @@ This is a property of the *class* that should indicate whether the store impleme
1919

2020
`supports_writes` is primarily used by tests to determine the expected result of write operations. It is not used by the library to enforce permissions.
2121

22+
### `supports_partial_writes`
23+
24+
The purpose of this property of the *class* is currently ambiguous.
25+
26+
One interpretation is that it indicates whether the store implements the following methods:
27+
28+
- `async def set_partial_values(self, key_start_values: Iterable[tuple[str, int, BytesLike]]) -> None:
29+
30+
But the `FsspecStore` class does not implement this method, but it does have `supports_partial_writes = True`.
31+
32+
Another interpretation is that it indicates whether the store supports a `byte_range` argument in the `set` method.
33+
2234
### `supports_deletes`
2335

2436
This is a property of the *class* that should indicate whether the store implements the following methods:
@@ -38,4 +50,8 @@ The `supports_deletes` property is also used by the testing framework to determi
3850

3951
This is a property of the *class* that should indicate whether the store implements the following method:
4052

41-
- `async def list(self, prefix: str = '', delimiter: str = '') -> List[str]:`
53+
- `async def list(self, prefix: str = '', delimiter: str = '') -> List[str]:`
54+
55+
This used to determine whether the `Store` abstract base classes `is_empty`, `clear`, and `delete_dir`methods should raise a `NotImplementedError`.
56+
57+
The `supports_listing` property is also used by the testing framework to determine the expected result of list operations.

0 commit comments

Comments
 (0)