Commit Graph
100 Commits
Author SHA1 Message Date
Simon Ser 83cb67070c webdav: fix LocalFileSystem.Readdir not returning children 2020-01-22 11:14:09 +01:00
Simon Ser 6eeeccb96e all: encode hrefs, replace hrefs with path in public API
Closes: https://github.com/emersion/go-webdav/issues/14
Closes: https://github.com/emersion/go-webdav/issues/16
2020-01-22 11:07:30 +01:00
Simon Ser 72c96af206 webdav: move recursive PROPFIND to backend
Closes: https://github.com/emersion/go-webdav/issues/22
2020-01-22 10:41:20 +01:00
Simon Ser 307a998a46 webdav: add Client.CopyAll 2020-01-22 10:16:48 +01:00
Simon Ser 489be203a1 webdav: add Client.MoveAll 2020-01-22 10:15:44 +01:00
Simon Ser d30d4d2932 internal: add helpers for the Overwrite header 2020-01-22 10:09:51 +01:00
Simon Ser c0a91b0085 internal: move Depth to internal.go 2020-01-22 10:06:00 +01:00
Simon Ser 90fe8dedf7 internal: add PROPPATCH support to server 2020-01-21 23:18:27 +01:00
Simon Ser 4cee748898 webdav: fix trailing getMod in client 2020-01-21 23:14:57 +01:00
Simon Ser 83272e2195 webdav: make FileInfo.ModTime optional in client 2020-01-21 22:47:48 +01:00
Simon Ser 82bdd23de4 webdav: populate FileInfo.MIMEType in client 2020-01-21 22:46:56 +01:00
Simon Ser 23fa5c582c webdav: make FileInfo.ModTime optional 2020-01-21 22:44:10 +01:00
Simon Ser 02d1a7dbe8 webdav: add MIMEType to FileInfo 2020-01-21 22:43:39 +01:00
Simon Ser c673e7c7e7 webdav: replace os.FileInfo with our own type 2020-01-21 22:36:42 +01:00
Simon Ser 6023eb58a0 webdav: replace File with io.ReadCloser
Closes: https://github.com/emersion/go-webdav/issues/17
2020-01-21 22:19:34 +01:00
Simon Ser a5d750f1e1 webdav: add Client.Mkdir 2020-01-21 22:06:47 +01:00
Simon Ser e9e1f102de webdav: add MKCOL support to server 2020-01-21 22:05:59 +01:00
Simon Ser a2ad695145 webdav: move WebDAV semantics handling to LocalFileSystem 2020-01-21 21:49:54 +01:00
Simon Ser 04bcea1ee8 webdav: add Client.RemoveAll 2020-01-21 21:48:07 +01:00
Simon Ser 41b68829e8 webdav: add DELETE support to server 2020-01-21 21:46:01 +01:00
Simon Ser 69f88b075a webdav: add PUT to allowed methods for regular files 2020-01-21 21:35:37 +01:00
Simon Ser 9db481fa51 webdav: add Client.Create 2020-01-21 21:32:43 +01:00
Simon Ser 7d6de88179 webdav: add support for PUT to server 2020-01-21 21:19:44 +01:00
Simon Ser 45774fe572 carddav: simplify variable names 2020-01-21 21:04:19 +01:00
Simon Ser ffc628aed9 webdav: fix URL encoding in PROPFIND handler 2020-01-21 21:02:41 +01:00
Simon Ser 0469c3d389 all: add basic docs 2020-01-21 21:01:18 +01:00
Simon Ser f6d0a37ea4 webdav: properly URL-encode hrefs in PROPFIND response 2020-01-21 20:08:58 +01:00
Simon Ser 4e4a5abed2 webdav: remove File.Readdir, add FileSystem.Readdir
References: https://github.com/emersion/go-webdav/issues/15
2020-01-21 19:59:41 +01:00
Simon Ser e851e6e3f1 webdav: remove File.Stat, add FileSystem.Stat
References: https://github.com/emersion/go-webdav/issues/15
2020-01-21 19:55:02 +01:00
Simon Ser 6526cef9eb webdav: add Client.Readdir 2020-01-21 18:55:29 +01:00
Simon Ser 8e50764757 webdav: add basic Client.Open 2020-01-21 18:47:29 +01:00
Simon Ser e84362bc0a webdav: add Client.Stat 2020-01-21 18:41:46 +01:00
Simon Ser 63cdea07be internal: allow Response.DecodeProp to decode multiple values 2020-01-21 18:41:25 +01:00
Simon Ser 3e41eefd12 internal: properly encode path in Client.NewRequest 2020-01-20 13:40:26 +01:00
Simon Ser d21315e9fc Fix host trailing dot in Discover 2020-01-20 13:17:19 +01:00
Simon Ser 19140af10d carddav: add Discover 2020-01-20 11:15:22 +01:00
Simon Ser 3a61646ab4 carddav: add current-user-principal to server 2020-01-20 10:56:25 +01:00
Simon Ser d8ce7d353d internal: check for response error in Multistatus.Get 2020-01-19 15:41:08 +01:00
Simon Ser 6e0ea58de1 carddav: populate AddressBook.{Name,MaxResourceSize} in client 2020-01-19 15:29:51 +01:00
Simon Ser c4718a3a49 carddav: add addressbook-home-set to server 2020-01-19 15:10:54 +01:00
Simon Ser 6bac674701 carddav: add max-resource-size to serve 2020-01-19 15:06:09 +01:00
Simon Ser 238e72b73e carddav: add addressbook-supprted-address-data to server 2020-01-19 15:00:40 +01:00
Simon Ser edfc2804b5 carddav: add displayname and addressbook-description to server 2020-01-19 14:53:58 +01:00
Simon Ser 797b2f8fc5 carddav: add address-data to server responses 2020-01-19 12:08:53 +01:00
Simon Ser 4a2a520522 carddav: add server support for REPORT addressbook-query 2020-01-19 12:02:18 +01:00
Simon Ser b311299ac0 internal: add Prop.Get, Prop.Decode 2020-01-19 12:01:55 +01:00
Simon Ser f3f1c8b58a internal: introduce DecodeXMLRequest, ServeXML and ServeMultistatus 2020-01-19 11:12:45 +01:00
Simon Ser 60e5d57cda carddav: implement REPORT addressbook-multiget 2020-01-19 11:05:56 +01:00
Simon Ser 402593c5c6 carddav: define XML names as globals 2020-01-18 12:58:53 +01:00
Simon Ser bf666bb2fb Ensure resourcetype is always defined 2020-01-17 17:09:44 +01:00
Simon Ser 34b2ebf940 all: use variables for xml.Name values 2020-01-17 17:09:23 +01:00
Simon Ser 557972089c carddav: add very basic server implementation 2020-01-17 16:59:29 +01:00
Simon Ser 13d70be046 carddav: rename Address to AddressObject 2020-01-17 16:20:05 +01:00
Simon Ser 883dafaf41 internal: fix Error element definition 2020-01-17 14:47:10 +01:00
Simon Ser 7cb302246b internal: add NewPropfindResponse helper 2020-01-17 14:40:29 +01:00
Simon Ser e2da5769f5 Improve OPTIONS handling 2020-01-17 11:41:44 +01:00
Simon Ser f4c21ca352 webdav: make HEAD/GET on a dir fail 2020-01-17 11:32:13 +01:00
Simon Ser 326c4b9b6f internal: add Handler 2020-01-17 11:30:42 +01:00
Simon Ser 3beeb23f7c internal: drop unused field in Client 2020-01-16 18:08:26 +01:00
Simon Ser 23433b3eb1 readme: license is now MIT 2020-01-16 16:30:11 +01:00
Simon Ser cabf33219e Add Client.SetBasicAuth 2020-01-15 23:45:37 +01:00
Simon Ser dbdd296d38 webdav: advertise class 3 support in OPTIONS 2020-01-15 23:17:43 +01:00
Simon Ser 0687eb165e webdav: add missing PROPFIND to OPTIONS response 2020-01-15 23:10:51 +01:00
Simon Ser 4c4624e225 webdav: add support for allprop and propname in PROPFIND 2020-01-15 23:03:09 +01:00
Simon Ser ae0541654a inetrnal: rename Date to Time, make it a Text{Marshaler,Unmarshaler} 2020-01-15 19:32:59 +01:00
Simon Ser 3d37e49ca0 internal: make Status a Text{Marshaler,Unmarshaler} 2020-01-15 19:23:09 +01:00
Simon Ser 040c38f1b6 webdav: add support for more props 2020-01-15 19:08:38 +01:00
Simon Ser d83efedfb5 webdav: list children in PROPFIND 2020-01-15 18:39:25 +01:00
Simon Ser ae93da82c1 webdav: add minimal server implementation 2020-01-15 18:21:27 +01:00
Simon Ser 42765234a8 internal: add Depth, Client.Propfind 2020-01-15 12:30:42 +01:00
Simon Ser 2b841a9234 carddav: add support for <addressbook-multiget> 2020-01-15 12:09:42 +01:00
Simon Ser 5fe39bbc13 internal: remove xml.Name arg from Response.DecodeProp
The xml.Name is now retrieved from the interface{} argument via
reflection.
2020-01-15 11:44:27 +01:00
Simon Ser 25ab0b2076 internal: add EncodeProp
This allows to simplify carddav.QueryAddressBook's request marshaling.
2020-01-15 11:17:38 +01:00
Simon Ser 45cd1977d4 Add go.sum 2020-01-15 11:17:07 +01:00
Simon Ser ee5864490e internal: make sure rawXMLValueReader is an xml.TokenReader 2020-01-15 11:16:30 +01:00
Simon Ser 44f7f84ef5 internal: add EncodeRawXMLElement 2020-01-15 11:14:34 +01:00
Simon Ser 56c162197b carddav: add Client.QueryAddressBook 2020-01-14 23:44:21 +01:00
Simon Ser 9dfabd89c8 carddav: add Client.FindAddressBooks 2020-01-14 23:13:23 +01:00
Simon Ser 3d05533a31 carddav: add very basic Client 2020-01-14 22:19:54 +01:00
Simon Ser 931602e55d internal: add Client.PropfindFlat 2020-01-14 21:43:09 +01:00
Simon Ser 94d597c1f5 internal: remove unnecessary call to Encoder.Flush 2020-01-14 21:38:25 +01:00
Simon Ser a4580254eb internal: check response status in Response.DecodeProp 2020-01-14 21:35:24 +01:00
Simon Ser 388377dfca internal: remove unnecessary namespaces in structs 2020-01-14 21:32:43 +01:00
Simon Ser 5748fec4d0 internal: add helpers to parse multistatus 2020-01-14 21:29:54 +01:00
Simon Ser 93f95c7fd2 internal: add <responsedescription> 2020-01-14 20:27:08 +01:00
Simon Ser 87a88d6723 Generate PROPFIND request body
Instead of a hardcoded string, generate it with encoding/xml.
2020-01-14 20:00:54 +01:00
Simon Ser 6f9ff62747 internal: add RawXMLValue.Decode 2020-01-14 18:53:29 +01:00
Simon Ser 3beb076950 webdav: add very basic Client 2020-01-14 18:51:17 +01:00
Simon Ser 055a297f6e internal: add RawXMLValue to defer XML encoding/decoding 2020-01-14 17:54:03 +01:00
Simon Ser 064cd80a24 Start from scratch 2020-01-14 17:51:33 +01:00
Simon Ser e36c7881da webdav: fix propfind decode errors 2020-01-08 19:20:00 +01:00
Simon Ser 1be15ec875 carddav: improve error handling 2020-01-08 18:54:29 +01:00
Simon Ser cb215c7037 Rename webdav.go to server.go 2019-12-17 17:39:19 +01:00
Simon Ser da3ea58163 Add go.mod 2019-12-17 17:24:38 +01:00
emersionandGitHub 4ef680e9a3 Merge pull request #5 from shurcooL/patch-1
carddav: Remove duplicate package comment
2018-05-09 20:03:21 +01:00
emersion f8d9f83cbc carddav: add AddressObject.Remove 2017-09-14 11:51:57 +02:00
emersion 579a25f989 carddav: cache file contents when opening it 2017-09-14 11:08:16 +02:00
emersion d2d201e6ad carddav: remove .vcf extension 2017-09-13 20:09:18 +02:00
emersion 2a7d999100 carddav: PUT support 2017-09-13 19:02:12 +02:00
emersion 64f8396654 Add godoc badge to README 2017-09-12 21:17:05 +02:00