You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@subversion.apache.org by Ben Reser <be...@reser.org> on 2004/03/09 00:47:22 UTC

Fixing the GNU tar requirement.

Subversion current ships a tarball created by GNU tar.  However there
are problems with this.  In particular GNU tar does not follow the
POSIX.1 standard when dealing with filenames longer than 100 characters.
This means our tarballs can't be extracted (without getting GNU tar) on
platforms such as Solaris that have their own POSIX compatable tar
command.

Currently subversion has several of these:
$ find subversion-1.0.0 | perl -ne 'if (length($_) > 100) { print $_; }'
subversion-1.0.0/subversion/bindings/java/javahl/src/org/tigris/subversion/javahl/PromptUserPassword2.java
subversion-1.0.0/subversion/bindings/java/javahl/src/org/tigris/subversion/javahl/PromptUserPassword3.java
subversion-1.0.0/subversion/bindings/java/javahl/src/org/tigris/subversion/javahl/SVNClientSynchronized.java
subversion-1.0.0/subversion/bindings/java/javahl/src/org/tigris/subversion/javahl/SVNClientInterface.java
subversion-1.0.0/subversion/bindings/java/javahl/src/org/tigris/subversion/javahl/ClientException.java
subversion-1.0.0/subversion/bindings/java/javahl/src/org/tigris/subversion/javahl/PromptUserPassword.java
subversion-1.0.0/subversion/bindings/java/javahl/src/org/tigris/subversion/javahl/BlameCallback.java
subversion-1.0.0/tools/cvs2svn/test-data/default-branches-cvsrepos/proj/deleted-on-vendor-branch.txt,v

You can read the details of the problems with GNU tar and the POSIX
standard at:
http://www.gnu.org/software/tar/manual/html_chapter/tar_8.html#SEC108
and
http://gd.tuwien.ac.at/utils/archivers/star/README.otherbugs

As you can see above the places where we have filenames longer than 100
chars in our tarball are in the javahl bindings and cvs2svn's test
suite.

Obviously, the cvs2svn problem is going away.  So we don't need to worry
about it.  But the javahl bindings will continue to be a problem.

The GNU tar suggests using the --old-archive option.  But this does not
solve our problem.  As GNU tar always uses an incompatable extension
when filenames are longer than 100 chars.

So here are the possible solutions:

* Move the bindings out of the subversion dir.  And into the top level
directory.  This would be similar to the tools directory.  Our longest
filename is currently 108 chars long.  Making that change would save us
11 characters keep us under the 100 char limit.  However, this would
require build system changes, documentation changes, and would not solve
the problem if the javahl bindings end up with a filename that's only 3
characters longer than the existing ones.

* Stop using GNU tar for creating the tar archives and start using GNU
cpio.  GNU cpio supports creating tar formats in the ustar format (i.e.
POSIX.1 format).  This gives a maximum filename of 255 characters.
Which is more than twice as long as what we are using.  Does not require
changes to anything other than dist.sh.  The following command can
replace our usage of tar and produce a POSIX.1 compatable tar file:
find subversion-1.0.0 -print | cpio -H ustar -o  > subversion-1.0.0.tar

I recommend using GNU cpio.  I've tested the output with Solaris and GNU
tar and it works perfectly.  If everyone is okay with this I'll post a
patch to effect this change.

-- 
Ben Reser <be...@reser.org>
http://ben.reser.org

"Conscience is the inner voice which warns us somebody may be looking."
- H.L. Mencken

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org

Re: bad timestamps in tarball, was: Fixing the GNU tar requirement.

Posted by Tobias Ringström <to...@ringstrom.mine.nu>.
Greg Hudson wrote:

> On Tue, 2004-03-16 at 05:29, Tobias Ringström wrote:
> 
>>Maybe it's time to use pax instead.  I just checked, and it does not 
>>have the same problem.  I don't know how common pax is, but it is *the* 
>>POSIX packager.
> 
> I think it's pretty common at this point (Solaris 8 certainly has it).

It's a standard tool on Redhat/Fedora Linux and Solaris, and for Debian 
it's just an "apt-get install pax" away, so I've commited a change to 
dist.sh in r9079 to use pax instead of cpio.

/Tobias


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org

Re: bad timestamps in tarball, was: Fixing the GNU tar requirement.

Posted by Greg Hudson <gh...@MIT.EDU>.
On Tue, 2004-03-16 at 05:29, Tobias Ringström wrote:
> Maybe it's time to use pax instead.  I just checked, and it does not 
> have the same problem.  I don't know how common pax is, but it is *the* 
> POSIX packager.

I think it's pretty common at this point (Solaris 8 certainly has it).


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org


Re: bad timestamps in tarball, was: Fixing the GNU tar requirement.

Posted by Tobias Ringström <to...@ringstrom.mine.nu>.
David Kimdon wrote:

> When I uploaded the 1.0.1 Debian packages the Debian Queue daemon
> rejected the package:
> 
> Rejected: libsvn-core-perl_1.0.1-1_powerpc.deb: has 5 file(s) with a
> time stamp too ancient (e.g. usr/lib/perl5/SVN/Client.pm [Mon Jan  5
> 23:06:34 1970]).
> 
> A bad clock on my build machine?  That was my first thought.  It turns
> out cpio created a tarball for us with bogus timestamps:

Maybe it's time to use pax instead.  I just checked, and it does not 
have the same problem.  I don't know how common pax is, but it is *the* 
POSIX packager.

/Tobias


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org

bad timestamps in tarball, was: Fixing the GNU tar requirement.

Posted by David Kimdon <da...@kimdon.org>.
When I uploaded the 1.0.1 Debian packages the Debian Queue daemon
rejected the package:

Rejected: libsvn-core-perl_1.0.1-1_powerpc.deb: has 5 file(s) with a
time stamp too ancient (e.g. usr/lib/perl5/SVN/Client.pm [Mon Jan  5
23:06:34 1970]).

A bad clock on my build machine?  That was my first thought.  It turns
out cpio created a tarball for us with bogus timestamps:

$ tar -xjf subversion-1.0.1.tar.bz2 subversion-1.0.1/CHANGES
$ ls -l subversion-1.0.1/CHANGES
-rw-r--r--    1 dwhedon  dwhedon     67157 Mar  4  1970
$ 

Does anyone not see bad timestamps for any file modified after
January 11, 2004 in the subversion 1.0.1 tarballs?

I posted the details on the problem with cpio along with a patch:

http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=238177

This isn't that serious an issue, but it is sort of odd to be creating
tarballs with incorrect dates.  I put fixed (I fixed the mtime
overflow assuming any file with a date before about 1978 had
overflowed and repackaged them with a fix cpio) tarballs up at:

http://people.debian.org/~dwhedon/cpio/subversion-1.0.1.tar.bz2
http://people.debian.org/~dwhedon/cpio/subversion-1.0.1.tar.gz

a328e05d1423f1bc3cf83980b4660b23  subversion-1.0.1.tar.bz2
3bda0519c7de61b2a112fd1b9fe6e4e1  subversion-1.0.1.tar.gz

I'm interested if anyone has a tar that has a problem with these
tarballs, and if when extracted the dates look correct.

-David

On Mon, Mar 08, 2004 at 04:47:22PM -0800, Ben Reser wrote:
> Subversion current ships a tarball created by GNU tar.  However there
> are problems with this.  In particular GNU tar does not follow the
> POSIX.1 standard when dealing with filenames longer than 100 characters.
> This means our tarballs can't be extracted (without getting GNU tar) on
> platforms such as Solaris that have their own POSIX compatable tar
> command.
> 
> Currently subversion has several of these:
> $ find subversion-1.0.0 | perl -ne 'if (length($_) > 100) { print $_; }'
> subversion-1.0.0/subversion/bindings/java/javahl/src/org/tigris/subversion/javahl/PromptUserPassword2.java
> subversion-1.0.0/subversion/bindings/java/javahl/src/org/tigris/subversion/javahl/PromptUserPassword3.java
> subversion-1.0.0/subversion/bindings/java/javahl/src/org/tigris/subversion/javahl/SVNClientSynchronized.java
> subversion-1.0.0/subversion/bindings/java/javahl/src/org/tigris/subversion/javahl/SVNClientInterface.java
> subversion-1.0.0/subversion/bindings/java/javahl/src/org/tigris/subversion/javahl/ClientException.java
> subversion-1.0.0/subversion/bindings/java/javahl/src/org/tigris/subversion/javahl/PromptUserPassword.java
> subversion-1.0.0/subversion/bindings/java/javahl/src/org/tigris/subversion/javahl/BlameCallback.java
> subversion-1.0.0/tools/cvs2svn/test-data/default-branches-cvsrepos/proj/deleted-on-vendor-branch.txt,v
> 
> You can read the details of the problems with GNU tar and the POSIX
> standard at:
> http://www.gnu.org/software/tar/manual/html_chapter/tar_8.html#SEC108
> and
> http://gd.tuwien.ac.at/utils/archivers/star/README.otherbugs
> 
> As you can see above the places where we have filenames longer than 100
> chars in our tarball are in the javahl bindings and cvs2svn's test
> suite.
> 
> Obviously, the cvs2svn problem is going away.  So we don't need to worry
> about it.  But the javahl bindings will continue to be a problem.
> 
> The GNU tar suggests using the --old-archive option.  But this does not
> solve our problem.  As GNU tar always uses an incompatable extension
> when filenames are longer than 100 chars.
> 
> So here are the possible solutions:
> 
> * Move the bindings out of the subversion dir.  And into the top level
> directory.  This would be similar to the tools directory.  Our longest
> filename is currently 108 chars long.  Making that change would save us
> 11 characters keep us under the 100 char limit.  However, this would
> require build system changes, documentation changes, and would not solve
> the problem if the javahl bindings end up with a filename that's only 3
> characters longer than the existing ones.
> 
> * Stop using GNU tar for creating the tar archives and start using GNU
> cpio.  GNU cpio supports creating tar formats in the ustar format (i.e.
> POSIX.1 format).  This gives a maximum filename of 255 characters.
> Which is more than twice as long as what we are using.  Does not require
> changes to anything other than dist.sh.  The following command can
> replace our usage of tar and produce a POSIX.1 compatable tar file:
> find subversion-1.0.0 -print | cpio -H ustar -o  > subversion-1.0.0.tar
> 
> I recommend using GNU cpio.  I've tested the output with Solaris and GNU
> tar and it works perfectly.  If everyone is okay with this I'll post a
> patch to effect this change.
> 
> -- 
> Ben Reser <be...@reser.org>
> http://ben.reser.org
> 
> "Conscience is the inner voice which warns us somebody may be looking."
> - H.L. Mencken
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
> For additional commands, e-mail: dev-help@subversion.tigris.org
> 
> 

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org

Re: [PATCH] Produce POSIX.1 compliant tarballs.

Posted by "Jostein Chr. Andersen" <jo...@josander.net>.
On Wednesday 10 March 2004 21.06, Justin Erenkrantz wrote:
...
> +1 for using for 1.0.1 *if* Jostein/Karl/RM-of-day agrees.  -- justin

+1

I'm finally at home again (downloaded more that 3200 emails (17 MB+) on 
my V90 modem, included spam :-( so I have a lot to emails to read.

Please forgive me if I respond in a non linear way this day(s)..

Jostein

-- 
http://www.josander.net/kontakt/ ||
http://www.josander.net/en/contact/

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org

Re: [PATCH] Produce POSIX.1 compliant tarballs.

Posted by Ben Reser <be...@reser.org>.
On Thu, Mar 11, 2004 at 03:33:34AM +0100, Benjamin Pflugmann wrote:
> PS: I could test more Mandrake platforms when I come home, but since
>     you, Ben, have access to more Mandrake platforms than I do and I
>     already cross-checked for one of them, I won't bother except if I
>     am asked to.

Yeah I was more concerned about platforms without GNU tar.

-- 
Ben Reser <be...@reser.org>
http://ben.reser.org

"Conscience is the inner voice which warns us somebody may be looking."
- H.L. Mencken

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org

Re: [PATCH] Produce POSIX.1 compliant tarballs.

Posted by Ben Reser <be...@reser.org>.
On Wed, Mar 10, 2004 at 09:44:30PM -0600, Travis P wrote:
> The tar man page on AIX had this to say about length (which is probably  
> not news to you, but I thought it interesting -- the 255 limit not  
> being a simple in-total limit):
> --
> When specifying path names that are greater than 100 characters for the  
> United States Tape Archiver (USTAR) format, remember that the path name  
> is composed of a prefix buffer, a / (slash), and a name buffer.
> 
> The prefix buffer can be a maximum of 155 bytes and the name buffer can  
> hold a maximum of 100 bytes. If the path name cannot be split into  
> these two parts by a slash, it cannot be archived. This limitation is  
> due to the structure of the tar archive headers, and must be maintained  
> for compliance with standards and backwards compatibility. In addition,  
> the length of a destination for a hard or symbolic link ( the 'link  
> name') cannot exceed 100 bytes.
> --

Yup, the GNU tar documentation I pointed to explains this (although not
as clearly).  This isn't a problem for us because currently our maximum
path is well under 155 chars.  If we surpase 155 chars and the 155th
char isn't a / then we should get an error from cpio.  In which case we
need to simply reconsider our directory structure.  There is no portable
way to go beyond 155 chars without some hoop jumping in our pathnaming.

-- 
Ben Reser <be...@reser.org>
http://ben.reser.org

"Conscience is the inner voice which warns us somebody may be looking."
- H.L. Mencken

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org

Re: [PATCH] Produce POSIX.1 compliant tarballs.

Posted by Travis P <sv...@castle.fastmail.fm>.
On Wed 2004-03-10 at 09:53:05 -0800, Ben Reser wrote:
[...]
> I've put up test tarballs that I built last night in my testing of this
> patch here:
> http://mirror.brain.org/linux/breser/temp/subversion-1.0.1-TARBALL- 
> TEST.tar.bz2
> http://mirror.brain.org/linux/breser/temp/subversion-1.0.1-TARBALL- 
> TEST.tar.gz
>
> They were made off the 1.0.x branch last night.
>
> If people can test these and let us know if they extract okay on their
> platform.  That would be really helpful.

AIX 5.1's non-GNU-tar appears to work on the the TARBALL-TEST.tar.bz2
There were no errors during untarring and I checked that
subversion-1.0.1/subversion/bindings/java/javahl/src/org/tigris/ 
subversion/javahl/SVNClientSynchronized.java
looks okay.

The tar man page on AIX had this to say about length (which is probably  
not news to you, but I thought it interesting -- the 255 limit not  
being a simple in-total limit):
--
When specifying path names that are greater than 100 characters for the  
United States Tape Archiver (USTAR) format, remember that the path name  
is composed of a prefix buffer, a / (slash), and a name buffer.

The prefix buffer can be a maximum of 155 bytes and the name buffer can  
hold a maximum of 100 bytes. If the path name cannot be split into  
these two parts by a slash, it cannot be archived. This limitation is  
due to the structure of the tar archive headers, and must be maintained  
for compliance with standards and backwards compatibility. In addition,  
the length of a destination for a hard or symbolic link ( the 'link  
name') cannot exceed 100 bytes.
--

-Travis


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org

Re: [PATCH] Produce POSIX.1 compliant tarballs.

Posted by Benjamin Pflugmann <be...@pflugmann.de>.
On Wed 2004-03-10 at 09:53:05 -0800, Ben Reser wrote:
[...]
> I've put up test tarballs that I built last night in my testing of this
> patch here:
> http://mirror.brain.org/linux/breser/temp/subversion-1.0.1-TARBALL-TEST.tar.bz2
> http://mirror.brain.org/linux/breser/temp/subversion-1.0.1-TARBALL-TEST.tar.gz
> 
> They were made off the 1.0.x branch last night.
> 
> If people can test these and let us know if they extract okay on their
> platform.  That would be really helpful.

Nothing suprising here.

Both tarballs extract fine on
 - Debian Woody, GNU tar 1.13.24
 - Debian unstable, GNU tar 1.13.93
 - Mandrake 9.1 (with some updates), same tar version

The gzip version (no bzip2 installed) works fine on
 - QNX 6.2.1B PE, GNU tar 1.13 (sic, without any patch-level) 

Bye,

	Benjamin.


PS: I could test more Mandrake platforms when I come home, but since
    you, Ben, have access to more Mandrake platforms than I do and I
    already cross-checked for one of them, I won't bother except if I
    am asked to.

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org

Re: [PATCH] Produce POSIX.1 compliant tarballs.

Posted by Christian Schaffner <ch...@users.sourceforge.net>.
On 10.03.2004, at 18:53, Ben Reser wrote:

> On Wed, Mar 10, 2004 at 09:14:37AM -0800, Justin Erenkrantz wrote:
>> It'll look like it should work on Solaris 6 as well.  So, yah, I'm +1  
>> to
>> this. Can you please commit to the trunk?
>
> Done in r8966.
>
>> We'll need to sanity test the produced tarballs once this goes in.   
>> Even
>> though what we have now produces corrupted source distros on Solaris  
>> (w/o
>> GNU tar), I'm sort of thinking this should go into 1.0.2 - not 1.0.1  
>> coming
>> out this week.  This would allow us enough time to test this widely;  
>> so
>> being conservative would be good.
>
> Per the conversation on IRC.
>
> I've put up test tarballs that I built last night in my testing of this
> patch here:
> http://mirror.brain.org/linux/breser/temp/subversion-1.0.1-TARBALL- 
> TEST.tar.bz2
> http://mirror.brain.org/linux/breser/temp/subversion-1.0.1-TARBALL- 
> TEST.tar.gz

Both extracted fine on Mac OS X using Finks GNU tar 1.13.25-12 and also  
Apples tar:

%  /usr/bin/tar --version
tar (GNU tar) 1.13.25

% /sw/bin/tar --version
tar (GNU tar) 1.13.25

Thanks, Chris.


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org

Re: [PATCH] Produce POSIX.1 compliant tarballs.

Posted by kf...@collab.net.
Justin Erenkrantz <ju...@erenkrantz.com> writes:
> I'm sold.
> 
> +1 for using for 1.0.1 *if* Jostein/Karl/RM-of-day agrees.  -- justin

I agree.

If we hear of any problem, we can simply unpack the tarball (somewhere
where that's not a problem), and repackage it two ways: the old way,
and the new way, giving the "new" archive a special component in its
name, e.g.:

   subversion-1.0.1.tar.gz
   subversion-1.0.1.tar.bz2
   subversion-1.0.1.cpio-tar.gz
   subversion-1.0.1.cpio-tar.bz2

It's fine to release repackagings of the same good stuff -- the
"subversion-1.0.1" is what defines the release, not the ".tar.gz"
part.

(There might be better names available, this was just an example.  And
remember, I'm not proposing we do this first.  First, we should just
try the new system, and if there are no problems, then great.)

-Karl

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org

Re: [PATCH] Produce POSIX.1 compliant tarballs.

Posted by Justin Erenkrantz <ju...@erenkrantz.com>.
--On Wednesday, March 10, 2004 9:53 AM -0800 Ben Reser <be...@reser.org> 
wrote:

> If people can test these and let us know if they extract okay on their
> platform.  That would be really helpful.

Tested on Red Hat 8.0, FreeBSD {4.9|5.2}, Solaris {2.6|7|8|9}, and Mac OS X 
10.3.2.

I'm sold.

+1 for using for 1.0.1 *if* Jostein/Karl/RM-of-day agrees.  -- justin

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org

Re: Anyone with access to an HP/UX box? was Re: [PATCH] Produce POSIX.1 compliant tarballs.

Posted by Justin Erenkrantz <ju...@erenkrantz.com>.
--On Thursday, March 11, 2004 6:34 AM -0500 "Philip W. Dalrymple III" 
<pw...@mdtsoft.com> wrote:

> I just untared the gz version (after gunziping it) on a 10.20 HP/UX and
> a 11.00 HP/UX system and the untar had no errors, I did not try to
> compile (I use gnu c anyway) but the tar worked without errors (this was
> the tar as shipped with the OS from /usr/bin).
>
> So this looks good for these two version of HP/UX

Thanks!  I think we're reasonably safe for 1.0.1 then.  -- justin

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org

Re: Anyone with access to an HP/UX box? was Re: [PATCH] Produce POSIX.1 compliant tarballs.

Posted by "Philip W. Dalrymple III" <pw...@mdtsoft.com>.
I just untared the gz version (after gunziping it) on a 10.20 HP/UX and
a 11.00 HP/UX system and the untar had no errors, I did not try to
compile (I use gnu c anyway) but the tar worked without errors (this was
the tar as shipped with the OS from /usr/bin).

So this looks good for these two version of HP/UX

On Thu, 2004-03-11 at 03:08, Justin Erenkrantz wrote:
> --On Wednesday, March 10, 2004 9:53 AM -0800 Ben Reser <be...@reser.org> wrote:
> 
> > I've put up test tarballs that I built last night in my testing of this
> > patch here:
> > http://mirror.brain.org/linux/breser/temp/subversion-1.0.1-TARBALL-TEST.tar.
> > bz2
> > http://mirror.brain.org/linux/breser/temp/subversion-1.0.1-TARBALL-TEST.tar.
> > gz
> >
> > They were made off the 1.0.x branch last night.
> >
> > If people can test these and let us know if they extract okay on their
> > platform.  That would be really helpful.
> 
> The one OS I'd like to see tested is HP/UX.  I think it's the other tar that 
> is picky.  Unfortunately, I don't have access to an HP/UX box anymore.
> 
> Can anyone assist?  Thanks!  -- justin
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
> For additional commands, e-mail: dev-help@subversion.tigris.org
> 
-- 
It is MDT, Inc's policy to delete mail containing unsolicited file
attachments.
Please be sure to contact the MDT staff member BEFORE sending an e-mail
with
any file attachments; they will be able to arrange for the files to be
received.

This email, and any files transmitted with it, is confidential and
intended
solely for the use of the individual or entity to whom they are
addressed.
If you have received this email in error, please advise
postmaster@mdtsoft.com
<ma...@mdtsoft.com>.

Philip W. Dalrymple III <pw...@mdtsoft.com>
MDT Software - The Change Management Company
+1 678 297 1001
Fax +1 678 297 1003


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org

Anyone with access to an HP/UX box? was Re: [PATCH] Produce POSIX.1 compliant tarballs.

Posted by Justin Erenkrantz <ju...@erenkrantz.com>.
--On Wednesday, March 10, 2004 9:53 AM -0800 Ben Reser <be...@reser.org> wrote:

> I've put up test tarballs that I built last night in my testing of this
> patch here:
> http://mirror.brain.org/linux/breser/temp/subversion-1.0.1-TARBALL-TEST.tar.
> bz2
> http://mirror.brain.org/linux/breser/temp/subversion-1.0.1-TARBALL-TEST.tar.
> gz
>
> They were made off the 1.0.x branch last night.
>
> If people can test these and let us know if they extract okay on their
> platform.  That would be really helpful.

The one OS I'd like to see tested is HP/UX.  I think it's the other tar that 
is picky.  Unfortunately, I don't have access to an HP/UX box anymore.

Can anyone assist?  Thanks!  -- justin

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org

Re: [PATCH] Produce POSIX.1 compliant tarballs.

Posted by Ben Reser <be...@reser.org>.
On Wed, Mar 10, 2004 at 09:14:37AM -0800, Justin Erenkrantz wrote:
> It'll look like it should work on Solaris 6 as well.  So, yah, I'm +1 to 
> this. Can you please commit to the trunk?

Done in r8966.

> We'll need to sanity test the produced tarballs once this goes in.  Even 
> though what we have now produces corrupted source distros on Solaris (w/o 
> GNU tar), I'm sort of thinking this should go into 1.0.2 - not 1.0.1 coming 
> out this week.  This would allow us enough time to test this widely; so 
> being conservative would be good.

Per the conversation on IRC.

I've put up test tarballs that I built last night in my testing of this
patch here:
http://mirror.brain.org/linux/breser/temp/subversion-1.0.1-TARBALL-TEST.tar.bz2
http://mirror.brain.org/linux/breser/temp/subversion-1.0.1-TARBALL-TEST.tar.gz

They were made off the 1.0.x branch last night.

If people can test these and let us know if they extract okay on their
platform.  That would be really helpful.

THESE ARE NOT REAL 1.0.1 TARBALLS.  THEY ARE NOT BETAS OR RCS.  USE THEM
AT YOUR OWN RISK!

-- 
Ben Reser <be...@reser.org>
http://ben.reser.org

"Conscience is the inner voice which warns us somebody may be looking."
- H.L. Mencken

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org

Re: [PATCH] Produce POSIX.1 compliant tarballs.

Posted by Justin Erenkrantz <ju...@erenkrantz.com>.
--On Tuesday, March 9, 2004 9:10 PM -0800 Ben Reser <be...@reser.org> wrote:

> On Mon, Mar 08, 2004 at 04:47:22PM -0800, Ben Reser wrote:
>> * Stop using GNU tar for creating the tar archives and start using GNU
>> cpio.  GNU cpio supports creating tar formats in the ustar format (i.e.
>> POSIX.1 format).  This gives a maximum filename of 255 characters.
>> Which is more than twice as long as what we are using.  Does not require
>> changes to anything other than dist.sh.  The following command can
>> replace our usage of tar and produce a POSIX.1 compatable tar file:
>> find subversion-1.0.0 -print | cpio -H ustar -o  > subversion-1.0.0.tar
>>
>> I recommend using GNU cpio.  I've tested the output with Solaris and GNU
>> tar and it works perfectly.  If everyone is okay with this I'll post a
>> patch to effect this change.
>
> As promised here is the patch.  I've tested this.  It produces tarballs
> that work on Solaris 7.

It'll look like it should work on Solaris 6 as well.  So, yah, I'm +1 to this. 
Can you please commit to the trunk?

We'll need to sanity test the produced tarballs once this goes in.  Even 
though what we have now produces corrupted source distros on Solaris (w/o GNU 
tar), I'm sort of thinking this should go into 1.0.2 - not 1.0.1 coming out 
this week.  This would allow us enough time to test this widely; so being 
conservative would be good.  -- justin

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org

[PATCH] Produce POSIX.1 compliant tarballs.

Posted by Ben Reser <be...@reser.org>.
On Mon, Mar 08, 2004 at 04:47:22PM -0800, Ben Reser wrote:
> * Stop using GNU tar for creating the tar archives and start using GNU
> cpio.  GNU cpio supports creating tar formats in the ustar format (i.e.
> POSIX.1 format).  This gives a maximum filename of 255 characters.
> Which is more than twice as long as what we are using.  Does not require
> changes to anything other than dist.sh.  The following command can
> replace our usage of tar and produce a POSIX.1 compatable tar file:
> find subversion-1.0.0 -print | cpio -H ustar -o  > subversion-1.0.0.tar
> 
> I recommend using GNU cpio.  I've tested the output with Solaris and GNU
> tar and it works perfectly.  If everyone is okay with this I'll post a
> patch to effect this change.

As promised here is the patch.  I've tested this.  It produces tarballs
that work on Solaris 7.

[[[
Fix dist.sh to produce tarballs that can be read on platforms without
GNU tar.

Patch by Ben Reser <be...@reser.org>

* dist.sh
  Use cpio instead of tar to produce the tarballs.
]]]


-- 
Ben Reser <be...@reser.org>
http://ben.reser.org

"Conscience is the inner voice which warns us somebody may be looking."
- H.L. Mencken

Re: Fixing the GNU tar requirement.

Posted by Ben Reser <be...@reser.org>.
On Tue, Mar 09, 2004 at 09:06:15AM +0100, Jostein Chr. Andersen wrote:
> Ben Reser writes:
> ...
> >I recommend using GNU cpio.  I've tested the output with Solaris and GNU
> >tar and it works perfectly.  If everyone is okay with this I'll post a
> >patch to effect this change.
> 
> Did you check this out?  :-) 
> 
> http://freshmeat.net/projects/star/ 

Yup (One of the links I provided was to a README file included with star
in fact).  I'm guessing pretty much everyone has cpio.  star would be
another dependency the release manager would need.  I'd rather avoid
that. 

-- 
Ben Reser <be...@reser.org>
http://ben.reser.org

"Conscience is the inner voice which warns us somebody may be looking."
- H.L. Mencken

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org

Re: Fixing the GNU tar requirement.

Posted by "Jostein Chr. Andersen" <jo...@josander.net>.
Ben Reser writes:
...
> I recommend using GNU cpio.  I've tested the output with Solaris and GNU
> tar and it works perfectly.  If everyone is okay with this I'll post a
> patch to effect this change.

Did you check this out?  :-) 

http://freshmeat.net/projects/star/ 

Jostein 


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org