Open nunntom opened 1 year ago
Thanks for reporting this! To set expectations:
Finally, please be patient with the core team. They are trying their best with limited resources.
I don't think it will work but maybe you can get more information by trying to publish with elm 0.19.0?
At least that works for some projects with some sort of package json parsing error - though that seems to be unrelated to your issue
Sadly it didn't work. The error was a little different but not much more useful:
-- HTTP PROBLEM ----------------------------------------------------------------
The following HTTP request failed:
<https://package.elm-lang.org/register?name=nunntom%2Felm-material-icons&version=1.0.0&commit-hash=30fc0bf1d46052c0140ca31ab2db141a31464350>
Here is the error message I was able to extract:
HttpExceptionRequest Request { host = "package.elm-lang.org" port = 443
secure = True requestHeaders = [("Content-Type","multipart/form-data;
boundary=----WebKitFormBoundaryNNoMKxsybCEQ7soS"),("User-Agent","elm/0.19.0"),("Accept-Encoding","gzip")]
path = "/register" queryString =
"?name=nunntom%2Felm-material-icons&version=1.0.0&commit-hash=30fc0bf1d46052c0140ca31ab2db141a31464350"
method = "POST" proxy = Nothing rawBody = False redirectCount = 10
responseTimeout = ResponseTimeoutNone requestVersion = HTTP/1.1 }
(StatusCodeException (Response {responseStatus = Status {statusCode = 413,
statusMessage = "Request Entity Too Large"}, responseVersion = HTTP/1.1,
responseHeaders = [("Server","nginx/1.10.3 (Ubuntu)"),("Date","Fri, 03 Mar
2023 21:27:58
GMT"),("Content-Type","text/html"),("Content-Length","208"),("Connection","close")],
responseBody = (), responseCookieJar = CJ {expose = []}, responseClose' =
ResponseClose}) "<html>\r\n<head><title>413 Request Entity Too
Large</title></head>\r\n<body bgcolor=\"white\">\r\n<center><h1>413 Request
Entity Too Large</h1></center>\r\n<hr><center>nginx/1.10.3
(Ubuntu)</center>\r\n</body>\r\n</html>\r\n")
maybe too much in your repo? elm-stuff folder is checked in, or something like that?
maybe too much in your repo? elm-stuff folder is checked in, or something like that?
Nothing like that checked in. I've now tried removing all extraneous codegen and npm stuff, leaving only the barebones elm. Still it fails with the same message.
The full repo is 4.2mb. Is it not possible to publish a library of this size?
@nunntom You might want to try increasing the git http post buffer size, as this failure seems to be happening when the CLI posts the automatic version commit to your repo:
git config --global http.postBuffer 1048576000
This, then downgrading to 0.19.0 worked for me.
@rektdeckard Thanks for the suggestion, sadly this didn't work in my case. :(
Update.
By checking the source of elm publish I found out that it sends a POST request to the package server with a payload containing among other things the docs.json. I stripped out all the doc comments from most of the functions and now with elm 19.0.0 I get this message which is a little more helpful:
The following HTTP request failed:
<https://package.elm-lang.org/register?name=nunntom%2Felm-material-icons&version=1.0.0&commit-hash=494a8b30db6be9855a27578e22928ddba686ad00>
Here is the error message I was able to extract:
HttpExceptionRequest Request { host = "package.elm-lang.org" port = 443
secure = True requestHeaders = [("Content-Type","multipart/form-data;
boundary=----WebKitFormBoundaryAkTA1zJbXHtGn1O6"),("User-Agent","elm/0.19.0"),("Accept-Encoding","gzip")]
path = "/register" queryString =
"?name=nunntom%2Felm-material-icons&version=1.0.0&commit-hash=494a8b30db6be9855a27578e22928ddba686ad00"
method = "POST" proxy = Nothing rawBody = False redirectCount = 10
responseTimeout = ResponseTimeoutNone requestVersion = HTTP/1.1 }
(StatusCodeException (Response {responseStatus = Status {statusCode = 400,
statusMessage = "Bad Request"}, responseVersion = HTTP/1.1, responseHeaders
= [("Server","nginx/1.10.3 (Ubuntu)"),("Date","Fri, 24 Mar 2023 10:06:37
GMT"),("Transfer-Encoding","chunked"),("Connection","keep-alive")],
responseBody = (), responseCookieJar = CJ {expose = []}, responseClose' =
ResponseClose}) "Failure uploading your package:\n - Your docs.json is too
big. Must be less than 768kb.\nLet us know if this limit is too low!")
Compare this with the less helpful message on 0.19.1
-- PROBLEM PUBLISHING PACKAGE --------------------------------------------------
I need to send information about your package to the package website, so I tried
to fetch:
https://package.elm-lang.org/register?name=nunntom%2Felm-material-icons&version=1.0.0&commit-hash=ba7dcc73ca09f47aec70b9def788d34d1dad73ac
But it came back as 400 Bad Request
This may mean some online endpoint changed in an unexpected way, so if does not
seem like something on your side is causing this (e.g. firewall) please report
this to https://github.com/elm/compiler/issues with your operating system, Elm
version, the command you ran, the terminal output, and any additional
information that can help others reproduce the error!
It would probably be more useful to stick to at least passing through the error message from the package server.
I'll report this on the package server repo.
I just tried to publish a shiny new package and got this error:
SSCCE
What do I need to do to get this package published?