go-webdav icon indicating copy to clipboard operation
go-webdav copied to clipboard

Move `internal`to `pkg`

Open DeepDiver1975 opened this issue 1 year ago • 4 comments
trafficstars

Let's say someone wants to implement an own webdav based server and follow the daldav, carddav or webdav pattern in this package.

Currently this is not possible because of the code living in internal.

I suggest to move the code to pkgto allow more reuse of the code base.

@emersion what do you think? THX

DeepDiver1975 avatar Apr 11 '24 16:04 DeepDiver1975

I'm not sure I understand the use-case here. Why not use the backend interfaces already exposed by go-webdav?

emersion avatar Apr 11 '24 16:04 emersion

Let's say I want to implement by own WebDAV server for files and folders but with my own customer properties on the resources.

DeepDiver1975 avatar Apr 11 '24 16:04 DeepDiver1975

or some webdav protocol based endpoints - e.g. what ownCloud and nextcloud do: https://doc.owncloud.com/server/next/developer_manual/webdav_api/comments.html etc https://docs.nextcloud.com/server/latest/developer_manual/client_apis/WebDAV/chunking.html etc

DeepDiver1975 avatar Apr 11 '24 16:04 DeepDiver1975

Hm, I see, thanks for the links, very helpful.

Unfortunately I'm not sure I'd like to expose this as a public API. It would increase the API surface quite a bit, maintaining just the existing API surface is already a lot of work. Also, non-standard properties are not something I want to help spread in general…

emersion avatar Apr 15 '24 13:04 emersion