Closed Enet4 closed 1 month ago
I say we decide what to do here and bring the necessary changes upstream for v4.0.0.
The way I see it, we can un-deprecate it and let developers customize the handles
logic a bit, while keeping the default implementation that tests the scheme for equality. This should hopefully prevent the original issue in #257 from happening again.
That sounds good to me. Do you take care of it?
In 2016, the method
handles
inStorageInterface
was proposed to be deprecated in #257. The rationale was that there was only single reasonable implementation of it, and there was at least one case in the wild of an incorrect implementation.The deprecation and default implementation was effectively applied in #280 for Dicoogle 3 in 2018, and since then we have also updated the Dicoogle learning pack to advise against using and implementing the method:
Per the reasoning in #257, this check was envisioned to be based exclusively on an exact match of the URI scheme against the scheme of the storage provider implementation (
StorageInterface#getScheme()
). But now a different use case arose:_Originally posted by @bastiao in https://github.com/bioinformatics-ua/dicoogle/pull/691#discussion_r1613087590_
Discussion is open.