There are (at least) two types of progress-related messages when cloning. One tracks the progress of object counting, the other the progress of object compressing. However, when the message line is split up and emitted to the progress event, the payload doesn't indicate which type of progress it is (the type). Here's an example:
{ loaded: 1, total: 124, lengthComputable: true }
{ loaded: 2, total: 124, lengthComputable: true }
{ loaded: 3, total: 124, lengthComputable: true }
{ loaded: 4, total: 124, lengthComputable: true }
{ loaded: 5, total: 124, lengthComputable: true }
...
{ loaded: 1, total: 38, lengthComputable: true }
{ loaded: 2, total: 38, lengthComputable: true }
{ loaded: 3, total: 38, lengthComputable: true }
{ loaded: 4, total: 38, lengthComputable: true }
{ loaded: 5, total: 38, lengthComputable: true }
...
As a result, it makes it hard to build a progress bar based on this information.
Please consider adding a "type" field with the value "counting" or "compressing" so that both progress types can be tracked independently.
The workaround is to observe the message event and do the message splitting yourself.
Yes, we need to sub-class progress events somehow. I was thinking by the event name, but adding a type attribute makes a lot of sense.
Another idea would be "stage", "phase", or "action", just to give you something to chew on.
:tada: This issue has been resolved in version 0.41.0 :tada:
The release is available on:
Your semantic-release bot :package::rocket:
Thanks @wmhilton! Just in time for the first release of my application after the switch to isomorphic-git. :metal: