Simon Spero created COMPRESS-400:
------------------------------------

             Summary: It should be possible for users to create and access 
extra PAX headers to tar archives 
                 Key: COMPRESS-400
                 URL: https://issues.apache.org/jira/browse/COMPRESS-400
             Project: Commons Compress
          Issue Type: Improvement
          Components: Archivers
            Reporter: Simon Spero
            Priority: Minor


It is very useful to be able to add extra PAX headers to tar entries.  For 
example, a tar file containing maven artifacts could have extra headers 
carrying the groupid, artifactid, version, classifier, etc.  

If the appropriate prefixes are used, these headers can be extracted to posix 
extended attributes by gnu and bsdtar.

This change requires adding a map to TarArchiveEntry to carry the extra 
headers, plus modifications to the TarArchive*Stream to save unrecognized 
headers when reading, and to add any extra headers when writing. 

I have created a prototype implementation, but have not merged it into my fork 
of the project.  I don't have full tests written, because I was using gnutar as 
an oracle.
 I have also ignored the issue of writing values to standard headers like size, 
though since the PAX specification states that doing things like setting 
size=100 (if the real size is not in fact 100) is undefined, so I'm technically 
in compliance.  The temptation is  to do what was asked, then on close pop up a 
"Were you sure?" dialog, but that's mean.  I guess I could use this to set the 
appropriate entry fields if doing so makes sense, but the easiest approach  is 
to block setting any headers that would be consumed by the tar implementation 
when reading. 



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)

Reply via email to