Hey all, I've just found out about the update of Httpclient (introduced in 1.5 I think, specifically this PR https://github.com/nim-lang/Nim/pull/15919) regarding deprecating httpMethod arg of type string on request function in favor of HttpMethod enum. I have a little webdav library that makes use of additional verbs (such as PROPFIND and MKCOL, rfc4918) so it doesn't compile since then with the following:
rror: unhandled exception: Invalid HTTP method name: MKCOL
Async traceback:
/home/beshr/src/code/nim/webdavclient/tests/test_webdav.nim(11) test_webdav
/home/beshr/.choosenim/toolchains/nim-1.6.2/lib/pure/asyncmacro.nim(232) mkdir
/home/beshr/.choosenim/toolchains/nim-1.6.2/lib/pure/asyncmacro.nim(28) mkdirNimAsyncContinue
/home/beshr/src/code/nim/webdavclient/src/webdavclient.nim(311) mkdirIter
/home/beshr/.choosenim/toolchains/nim-1.6.2/lib/pure/asyncmacro.nim(232) request
/home/beshr/.choosenim/toolchains/nim-1.6.2/lib/pure/asyncmacro.nim(28) requestNimAsyncContinue
/home/beshr/src/code/nim/webdavclient/src/webdavclient.nim(94) requestIter
/home/beshr/.choosenim/toolchains/nim-1.6.2/lib/pure/asyncmacro.nim(232) request
/home/beshr/.choosenim/toolchains/nim-1.6.2/lib/pure/asyncmacro.nim(28) requestNimAsyncContinue
/home/beshr/.choosenim/toolchains/nim-1.6.2/lib/pure/httpclient.nim(1108) requestIter
#[
/home/beshr/src/code/nim/webdavclient/tests/test_webdav.nim(11) test_webdav
/home/beshr/.choosenim/toolchains/nim-1.6.2/lib/pure/asyncmacro.nim(232) mkdir
/home/beshr/.choosenim/toolchains/nim-1.6.2/lib/pure/asyncmacro.nim(28) mkdirNimAsyncContinue
/home/beshr/src/code/nim/webdavclient/src/webdavclient.nim(311) mkdirIter
/home/beshr/.choosenim/toolchains/nim-1.6.2/lib/pure/asyncmacro.nim(232) request
/home/beshr/.choosenim/toolchains/nim-1.6.2/lib/pure/asyncmacro.nim(31) requestNimAsyncContinue
/home/beshr/.choosenim/toolchains/nim-1.6.2/lib/pure/asyncmacro.nim(131) requestIter
/home/beshr/.choosenim/toolchains/nim-1.6.2/lib/pure/asyncfutures.nim(389) read
]#
#[
/home/beshr/src/code/nim/webdavclient/tests/test_webdav.nim(11) test_webdav
/home/beshr/.choosenim/toolchains/nim-1.6.2/lib/pure/asyncmacro.nim(232) mkdir
/home/beshr/.choosenim/toolchains/nim-1.6.2/lib/pure/asyncmacro.nim(31) mkdirNimAsyncContinue
/home/beshr/.choosenim/toolchains/nim-1.6.2/lib/pure/asyncmacro.nim(131) mkdirIter
/home/beshr/.choosenim/toolchains/nim-1.6.2/lib/pure/asyncfutures.nim(389) read
]#
Exception message: Invalid HTTP method name: MKCOL
I'm wondering what would be the recommended course of action here: implement my own function (something like requestAux) that accepts additional custom verbs or create a PR that adds additional allowed verbs to HttpMethod enum?
create a PR that adds additional allowed verbs to HttpMethod enum?
This one I think