Skip to content

Commit

Permalink
Merge pull request #1365 from pbiering/fix-actions
Browse files Browse the repository at this point in the history
fix for actions
  • Loading branch information
pbiering authored Mar 2, 2024
2 parents 5678453 + 88f6567 commit b7272be
Show file tree
Hide file tree
Showing 8 changed files with 16 additions and 8 deletions.
2 changes: 1 addition & 1 deletion radicale/item/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -164,7 +164,7 @@ def check_and_sanitize_items(
ref_value_param = component.dtstart.params.get("VALUE")
for dates in chain(component.contents.get("exdate", []),
component.contents.get("rdate", [])):
if all(type(d) == type(ref_date) for d in dates.value):
if all(type(d) is type(ref_date) for d in dates.value):
continue
for i, date in enumerate(dates.value):
dates.value[i] = ref_date.replace(
Expand Down
3 changes: 2 additions & 1 deletion radicale/storage/multifilesystem/base.py
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,8 @@ def __init__(self, storage_: "multifilesystem.Storage", path: str,
filesystem_path = pathutils.path_to_filesystem(folder, self.path)
self._filesystem_path = filesystem_path

@types.contextmanager
# TODO: better fix for "mypy"
@types.contextmanager # type: ignore
def _atomic_write(self, path: str, mode: str = "w",
newline: Optional[str] = None) -> Iterator[IO[AnyStr]]:
# TODO: Overload with Literal when dropping support for Python < 3.8
Expand Down
3 changes: 2 additions & 1 deletion radicale/storage/multifilesystem/cache.py
Original file line number Diff line number Diff line change
Expand Up @@ -86,7 +86,8 @@ def _store_item_cache(self, href: str, item: radicale_item.Item,
content = self._item_cache_content(item)
self._storage._makedirs_synced(cache_folder)
# Race: Other processes might have created and locked the file.
with contextlib.suppress(PermissionError), self._atomic_write(
# TODO: better fix for "mypy"
with contextlib.suppress(PermissionError), self._atomic_write( # type: ignore
os.path.join(cache_folder, href), "wb") as fo:
fb = cast(BinaryIO, fo)
pickle.dump((cache_hash, *content), fb)
Expand Down
3 changes: 2 additions & 1 deletion radicale/storage/multifilesystem/meta.py
Original file line number Diff line number Diff line change
Expand Up @@ -61,6 +61,7 @@ def get_meta(self, key: Optional[str] = None) -> Union[Mapping[str, str],
return self._meta_cache if key is None else self._meta_cache.get(key)

def set_meta(self, props: Mapping[str, str]) -> None:
with self._atomic_write(self._props_path, "w") as fo:
# TODO: better fix for "mypy"
with self._atomic_write(self._props_path, "w") as fo: # type: ignore
f = cast(TextIO, fo)
json.dump(props, f, sort_keys=True)
3 changes: 2 additions & 1 deletion radicale/storage/multifilesystem/sync.py
Original file line number Diff line number Diff line change
Expand Up @@ -95,7 +95,8 @@ def check_token_name(token_name: str) -> bool:
self._storage._makedirs_synced(token_folder)
try:
# Race: Other processes might have created and locked the file.
with self._atomic_write(token_path, "wb") as fo:
# TODO: better fix for "mypy"
with self._atomic_write(token_path, "wb") as fo: # type: ignore
fb = cast(BinaryIO, fo)
pickle.dump(state, fb)
except PermissionError:
Expand Down
3 changes: 2 additions & 1 deletion radicale/storage/multifilesystem/upload.py
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,8 @@ def upload(self, href: str, item: radicale_item.Item
raise ValueError("Failed to store item %r in collection %r: %s" %
(href, self.path, e)) from e
path = pathutils.path_to_filesystem(self._filesystem_path, href)
with self._atomic_write(path, newline="") as fo:
# TODO: better fix for "mypy"
with self._atomic_write(path, newline="") as fo: # type: ignore
f = cast(TextIO, fo)
f.write(item.serialize())
# Clean the cache after the actual item is stored, or the cache entry
Expand Down
5 changes: 4 additions & 1 deletion radicale/tests/test_server.py
Original file line number Diff line number Diff line change
Expand Up @@ -106,7 +106,10 @@ def request(self, method: str, path: str, data: Optional[str] = None,
data_bytes = None
if data:
data_bytes = data.encode(encoding)
req_host = ("[%s]" % self.sockname[0]) if self.sockfamily == socket.AF_INET6 else self.sockname[0]
if self.sockfamily == socket.AF_INET6:
req_host = ("[%s]" % self.sockname[0])
else:
req_host = self.sockname[0]
req = request.Request(
"%s://%s:%d%s" % (scheme, req_host, self.sockname[1], path),
data=data_bytes, headers=headers, method=method)
Expand Down
2 changes: 1 addition & 1 deletion setup.cfg
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ known_third_party = defusedxml,passlib,pkg_resources,pytest,vobject
# Only enable default tests (https://github.com/PyCQA/flake8/issues/790#issuecomment-812823398)
# DNE: DOES-NOT-EXIST
select = E,F,W,C90,DNE000
ignore = E121,E123,E126,E226,E24,E704,W503,W504,DNE000
ignore = E121,E123,E126,E226,E24,E704,W503,W504,DNE000,E501
extend-exclude = build

[mypy]
Expand Down

0 comments on commit b7272be

Please sign in to comment.