rebar3_hex icon indicating copy to clipboard operation
rebar3_hex copied to clipboard

Should rebar3_hex use hex_tarball:create_docs/2?

Open onno-vos-dev opened this issue 2 years ago • 1 comments

Linked issue: https://github.com/hexpm/hex_core/issues/136

When trying to publish docs for aws-beam/aws-erlang I ran into an issue where trying to publish the docs resulted in the following error: "tarball error, unknown POSIX error".

After patching OTP to include the actual error as per my local OTP patch I figured the actual error is too_big which comes from hex_tarball.erl#L143

rebar3_hex uses hex_tarball:create_docs/1 and does not allow overriding the default configs coming from: hex_tarball.erl#L114

One can argue for one of two things:

  1. rebar3_hex should not use create_docs/1 but should instead use create_docs/2 and allow the overriding of tarball_max_size and tarball_max_uncompressed_size.
  2. The defaults chosen in hex_core are too small and hence should be increased.

I've already opened a pull request towards hex_core to bump the default but I'd like to discuss if it'd make sense to allow passing in an even bigger tarball_max_size and tarball_max_uncompressed_size as an option by using hex_tarball:create_docs/2 instead.

onno-vos-dev avatar Jan 27 '23 18:01 onno-vos-dev

Right, so the max size is currently 8MB, I also see that the max size on hexpm (service) is 10MB, so unless there's an update to hexpm per the issue and pr you've opened, there wouldn't be much point at the moment in allowing a user to configure this. I'm not sure being able to configure this with rebar3_hex rather, hex_core should be aligned with hexpm as far as the max upload size.

Let's see what falls out of the issue and PR you've opened.

starbelly avatar Jan 28 '23 03:01 starbelly