Avoid using xargs when creating package tarballs #136
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Fix for this issue: #110
xargs
was being used to runtar
to create each package tarball. Butxargs
has a default--max-chars
limit (per command it will run) of 128KiB (assuming the system ARG_MAX is significantly larger than this). For packages that contain a large number of files, this limit is exceeded, and the argument list is split into multiple tar runs. Since the-c
option is used to create a new tar archive each run, only the files passed into the last execution would wind up in the resulting tar file.With this change, the tar file list is now being passed via tar's
--files-from
option, using process substitution, there-by avoiding the above mentioned limit, and simplifying tarball creation as well.