Skip to content

Commit 473308a

Browse files
authored
use as_posix correctly for str and for listdir (#2467)
* use as_posix for str and for listdir * release the windows workflows * unbreak gha
1 parent f05413e commit 473308a

File tree

3 files changed

+11
-14
lines changed

3 files changed

+11
-14
lines changed

Diff for: .github/workflows/test.yml

+8-9
Original file line numberDiff line numberDiff line change
@@ -33,15 +33,14 @@ jobs:
3333
numpy-version: '2.1'
3434
dependency-set: 'optional'
3535
os: 'macos-latest'
36-
# https://github.com/zarr-developers/zarr-python/issues/2438
37-
# - python-version: '3.11'
38-
# numpy-version: '1.25'
39-
# dependency-set: 'optional'
40-
# os: 'windows-latest'
41-
# - python-version: '3.13'
42-
# numpy-version: '2.1'
43-
# dependency-set: 'optional'
44-
# os: 'windows-latest'
36+
- python-version: '3.11'
37+
numpy-version: '1.25'
38+
dependency-set: 'optional'
39+
os: 'windows-latest'
40+
- python-version: '3.13'
41+
numpy-version: '2.1'
42+
dependency-set: 'optional'
43+
os: 'windows-latest'
4544
runs-on: ${{ matrix.os }}
4645

4746
steps:

Diff for: src/zarr/storage/local.py

+2-4
Original file line numberDiff line numberDiff line change
@@ -132,7 +132,7 @@ def with_mode(self, mode: AccessModeLiteral) -> Self:
132132
return type(self)(root=self.root, mode=mode)
133133

134134
def __str__(self) -> str:
135-
return f"file://{self.root}"
135+
return f"file://{self.root.as_posix()}"
136136

137137
def __repr__(self) -> str:
138138
return f"LocalStore({str(self)!r})"
@@ -235,11 +235,9 @@ async def list_prefix(self, prefix: str) -> AsyncGenerator[str]:
235235
async def list_dir(self, prefix: str) -> AsyncGenerator[str]:
236236
# docstring inherited
237237
base = self.root / prefix
238-
to_strip = str(base) + "/"
239-
240238
try:
241239
key_iter = base.iterdir()
242240
for key in key_iter:
243-
yield key.as_posix().replace(to_strip, "")
241+
yield key.relative_to(base).as_posix()
244242
except (FileNotFoundError, NotADirectoryError):
245243
pass

Diff for: tests/test_store/test_local.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ def store_kwargs(self, tmpdir) -> dict[str, str]:
3131
return {"root": str(tmpdir), "mode": "r+"}
3232

3333
def test_store_repr(self, store: LocalStore) -> None:
34-
assert str(store) == f"file://{store.root!s}"
34+
assert str(store) == f"file://{store.root.as_posix()!s}"
3535

3636
def test_store_supports_writes(self, store: LocalStore) -> None:
3737
assert store.supports_writes

0 commit comments

Comments
 (0)