Re: [fossil-users] tar file is different then zip file
On Wed, 20 Jul 2011 16:44:17 -0700 (PDT), Gé Weijers wrote: I have submitted a bug report on this issue. The 'tar' format has been extended over the years, and it's now a fairly interesting mess. File names over 100 bytes are split into two. Posix requires this to be done at a '/' (which you can delete). Fossil splits it anywhere, which confuses all the extraction utilities I've tried. If the splitting position is calculated correctly Fossil should be able to support file names that: - have = 256 characters. - have a slash no further than 100 characters from the end. - have a slash no further than 155 character from the beginning. - contain only ASCII characters if standard compliance is required. The 2001 Posix.1 standard defines extensions that can support any length of file name, encoded in UTF8, any size file (tar is otherwise limited to 8GB), and all kinds of other stuff. It's known as Pax Interchange Format. GNU and FreeBSD tar understand these extensions. The pax utility on Linux and FreeBSD does not implement it (beats me). Gé On Mon, 18 Jul 2011, Rene wrote: On Mon, 18 Jul 2011 16:15:50 -0400, Richard Hipp wrote: On Mon, Jul 18, 2011 at 4:09 PM, Rene wrote: It must be something specific for this repo because if I do a tarball from my local copy of fossil (hence the same version) I don't see multiple directories. What version of Fossil are you running on the server, and what version are you running locally? odd the command fossil tarball ffd22b79fe24110d rene.tar --name rene does create a single directory rene. with and without the --name option it is still one single directory -- Rene ___ fossil-users mailing list fossil-users@lists.fossil-scm.org http://lists.fossil-scm.org:8080/cgi-bin/mailman/listinfo/fossil-users Thanks for the bug report. I wonder are you able to get the same (mis)behavior out of fossil as I did out of my repository? -- Rene ___ fossil-users mailing list fossil-users@lists.fossil-scm.org http://lists.fossil-scm.org:8080/cgi-bin/mailman/listinfo/fossil-users
Re: [fossil-users] tar file is different then zip file
On Thu, 21 Jul 2011, Rene wrote: Thanks for the bug report. I wonder are you able to get the same (mis)behavior out of fossil as I did out of my repository? Yes, it's reproducible. Once the file path length goes over 100 characters the file quite reliably does not come out right. All the tar implementations I tried (GNU tar and 'pax' on Ubuntu Linux, and BSD tar on FreeBSD) do not create the right file names. Gé -- Rene ___ fossil-users mailing list fossil-users@lists.fossil-scm.org http://lists.fossil-scm.org:8080/cgi-bin/mailman/listinfo/fossil-users___ fossil-users mailing list fossil-users@lists.fossil-scm.org http://lists.fossil-scm.org:8080/cgi-bin/mailman/listinfo/fossil-users
Re: [fossil-users] tar file is different then zip file
I have submitted a bug report on this issue. The 'tar' format has been extended over the years, and it's now a fairly interesting mess. File names over 100 bytes are split into two. Posix requires this to be done at a '/' (which you can delete). Fossil splits it anywhere, which confuses all the extraction utilities I've tried. If the splitting position is calculated correctly Fossil should be able to support file names that: - have = 256 characters. - have a slash no further than 100 characters from the end. - have a slash no further than 155 character from the beginning. - contain only ASCII characters if standard compliance is required. The 2001 Posix.1 standard defines extensions that can support any length of file name, encoded in UTF8, any size file (tar is otherwise limited to 8GB), and all kinds of other stuff. It's known as Pax Interchange Format. GNU and FreeBSD tar understand these extensions. The pax utility on Linux and FreeBSD does not implement it (beats me). Gé On Mon, 18 Jul 2011, Rene wrote: On Mon, 18 Jul 2011 16:15:50 -0400, Richard Hipp wrote: On Mon, Jul 18, 2011 at 4:09 PM, Rene wrote: It must be something specific for this repo because if I do a tarball from my local copy of fossil (hence the same version) I don't see multiple directories. What version of Fossil are you running on the server, and what version are you running locally? odd the command fossil tarball ffd22b79fe24110d rene.tar --name rene does create a single directory rene. with and without the --name option it is still one single directory -- Rene ___ fossil-users mailing list fossil-users@lists.fossil-scm.org http://lists.fossil-scm.org:8080/cgi-bin/mailman/listinfo/fossil-users ___ fossil-users mailing list fossil-users@lists.fossil-scm.org http://lists.fossil-scm.org:8080/cgi-bin/mailman/listinfo/fossil-users
[fossil-users] tar file is different then zip file
I have converted a cvs repo to fossil. I checked if the tag release_v5_1_0 would yield the same number of files as you can see from this timeline fragment it is version 186f4fdca4 [186f4fdca4] brokerhost geintroduceert * Upd mxflex/gbo/app_po.inc: 1.39 * Upd mxflex/gbo/app_bo.inc: 1.36 (user: renez, tags: trunk, release_v5_1_0) mxflex/gbo/app_bo.inc [diff] mxflex/gbo/app_po.inc [diff] The tar file contains 2 directories mxflex-186f4fdca41c087b(has 991 files) xflex-186f4fdca41c087b(has 2 files) while the zip file contains only one directory mxflex-186f4fdca41c087b(has 993 files) The tar file doesn't produce the release while the zip does. -- Rene ___ fossil-users mailing list fossil-users@lists.fossil-scm.org http://lists.fossil-scm.org:8080/cgi-bin/mailman/listinfo/fossil-users
Re: [fossil-users] tar file is different then zip file
On Mon, Jul 18, 2011 at 3:32 PM, Rene renew...@xs4all.nl wrote: I have converted a cvs repo to fossil. I checked if the tag release_v5_1_0 would yield the same number of files as you can see from this timeline fragment it is version 186f4fdca4 [186f4fdca4] brokerhost geintroduceert * Upd mxflex/gbo/app_po.inc: 1.39 * Upd mxflex/gbo/app_bo.inc: 1.36 (user: renez, tags: trunk, release_v5_1_0) mxflex/gbo/app_bo.inc [diff] mxflex/gbo/app_po.inc [diff] The tar file contains 2 directories mxflex-186f4fdca41c087b(has 991 files) xflex-186f4fdca41c087b(has 2 files) while the zip file contains only one directory mxflex-186f4fdca41c087b(has 993 files) The tar file doesn't produce the release while the zip does. Perhaps the long filename support in tarball generator is busted. Do the two files that differ have very long pathnames? Are they the longest two pathnames in the repository? -- Rene ___ fossil-users mailing list fossil-users@lists.fossil-scm.org http://lists.fossil-scm.org:8080/cgi-bin/mailman/listinfo/fossil-users -- D. Richard Hipp d...@sqlite.org ___ fossil-users mailing list fossil-users@lists.fossil-scm.org http://lists.fossil-scm.org:8080/cgi-bin/mailman/listinfo/fossil-users
Re: [fossil-users] tar file is different then zip file
On Mon, 18 Jul 2011 15:38:07 -0400, Richard Hipp wrote: On Mon, Jul 18, 2011 at 3:32 PM, Rene wrote: I have converted a cvs repo to fossil. I checked if the tag release_v5_1_0 would yield the same number of files as you can see from this timeline fragment it is version 186f4fdca4 [186f4fdca4] brokerhost geintroduceert * Upd mxflex/gbo/app_po.inc: 1.39 * Upd mxflex/gbo/app_bo.inc: 1.36 (user: renez, tags: trunk, release_v5_1_0) mxflex/gbo/app_bo.inc [diff] mxflex/gbo/app_po.inc [diff] The tar file contains 2 directories mxflex-186f4fdca41c087b(has 991 files) xflex-186f4fdca41c087b(has 2 files) while the zip file contains only one directory mxflex-186f4fdca41c087b(has 993 files) The tar file doesn't produce the release while the zip does. Perhaps the long filename support in tarball generator is busted. Do the two files that differ have very long pathnames? Are they the longest two pathnames in the repository? -- Rene ___ fossil-users mailing list fossil-users@lists.fossil-scm.org [1] http://lists.fossil-scm.org:8080/cgi-bin/mailman/listinfo/fossil-users [2] xflex-186f4fdca41c087b has xflex-186f4fdca41c087b/mxflex/xbr_bus/general/gui/smarty/internals/core.assemble_plugin_filepath.php mxflex-186f4fdca41c087b has mxflex-186f4fdca41c087b/mxflex/xbr_bus/general/gui/smarty/internals/core.process_cached_inserts.php which is 1 shorter. If I do a tar bal from the head i get this in the top directory 22b79fe24110d d22b79fe24110d -ffd22b79fe24110d x-ffd22b79fe24110d 2b79fe24110d ex-ffd22b79fe24110d flex-ffd22b79fe24110d xflex-ffd22b79fe24110d 79fe24110d fd22b79fe24110d lex-ffd22b79fe24110d b79fe24110dffd22b79fe24110d mxflex-ffd22b79fe24110d while the zip just produces mxflex-ffd22b79fe24110d It seems how closer I come to the latest the more directories the tarbal creates. It must be something specific for this repo because if I do a tarball from my local copy of fossil (hence the same version) I don't see multiple directories. -- Rene ___ fossil-users mailing list fossil-users@lists.fossil-scm.org http://lists.fossil-scm.org:8080/cgi-bin/mailman/listinfo/fossil-users
Re: [fossil-users] tar file is different then zip file
On Mon, Jul 18, 2011 at 4:09 PM, Rene renew...@xs4all.nl wrote: It must be something specific for this repo because if I do a tarball from my local copy of fossil (hence the same version) I don't see multiple directories. What version of Fossil are you running on the server, and what version are you running locally? -- D. Richard Hipp d...@sqlite.org ___ fossil-users mailing list fossil-users@lists.fossil-scm.org http://lists.fossil-scm.org:8080/cgi-bin/mailman/listinfo/fossil-users
Re: [fossil-users] tar file is different then zip file
On Mon, 18 Jul 2011 16:15:50 -0400, Richard Hipp wrote: On Mon, Jul 18, 2011 at 4:09 PM, Rene wrote: It must be something specific for this repo because if I do a tarball from my local copy of fossil (hence the same version) I don't see multiple directories. What version of Fossil are you running on the server, and what version are you running locally? Fossil version 1.18 [5acc3e4cc4] 2011-06-29 17:10:05 the server is my localhost -- Rene ___ fossil-users mailing list fossil-users@lists.fossil-scm.org http://lists.fossil-scm.org:8080/cgi-bin/mailman/listinfo/fossil-users
Re: [fossil-users] tar file is different then zip file
On Mon, 18 Jul 2011 16:15:50 -0400, Richard Hipp wrote: On Mon, Jul 18, 2011 at 4:09 PM, Rene wrote: It must be something specific for this repo because if I do a tarball from my local copy of fossil (hence the same version) I don't see multiple directories. What version of Fossil are you running on the server, and what version are you running locally? Upgrading to Fossil version 1.18 [06e9ca23e7] 2011-07-18 20:04:34 doesn't make a difference -- Rene ___ fossil-users mailing list fossil-users@lists.fossil-scm.org http://lists.fossil-scm.org:8080/cgi-bin/mailman/listinfo/fossil-users
Re: [fossil-users] tar file is different then zip file
On Mon, 18 Jul 2011 16:15:50 -0400, Richard Hipp wrote: On Mon, Jul 18, 2011 at 4:09 PM, Rene wrote: It must be something specific for this repo because if I do a tarball from my local copy of fossil (hence the same version) I don't see multiple directories. What version of Fossil are you running on the server, and what version are you running locally? odd the command fossil tarball ffd22b79fe24110d rene.tar --name rene does create a single directory rene. with and without the --name option it is still one single directory -- Rene ___ fossil-users mailing list fossil-users@lists.fossil-scm.org http://lists.fossil-scm.org:8080/cgi-bin/mailman/listinfo/fossil-users
Re: [fossil-users] tar file is different then zip file
The old tar 'v7' format only supports file names up to 99 characters, according to the GNU tar documentation. The check in 'tar_add_header' (tar.c) checks for nName 100. The file name that gets mangled is exactly 100 chars long Gé On Mon, 18 Jul 2011, Rene wrote: On Mon, 18 Jul 2011 15:38:07 -0400, Richard Hipp wrote: On Mon, Jul 18, 2011 at 3:32 PM, Rene wrote: I have converted a cvs repo to fossil. I checked if the tag release_v5_1_0 would yield the same number of files as you can see from this timeline fragment it is version 186f4fdca4 [186f4fdca4] brokerhost geintroduceert * Upd mxflex/gbo/app_po.inc: 1.39 * Upd mxflex/gbo/app_bo.inc: 1.36 (user: renez, tags: trunk, release_v5_1_0) mxflex/gbo/app_bo.inc [diff] mxflex/gbo/app_po.inc [diff] The tar file contains 2 directories mxflex-186f4fdca41c087b(has 991 files) xflex-186f4fdca41c087b(has 2 files) while the zip file contains only one directory mxflex-186f4fdca41c087b(has 993 files) The tar file doesn't produce the release while the zip does. Perhaps the long filename support in tarball generator is busted. Do the two files that differ have very long pathnames? Are they the longest two pathnames in the repository? -- Rene ___ fossil-users mailing list fossil-users@lists.fossil-scm.org [1] http://lists.fossil-scm.org:8080/cgi-bin/mailman/listinfo/fossil-users [2] xflex-186f4fdca41c087b has xflex-186f4fdca41c087b/mxflex/xbr_bus/general/gui/smarty/internals/core.assemble_plugin_filepath.php mxflex-186f4fdca41c087b has mxflex-186f4fdca41c087b/mxflex/xbr_bus/general/gui/smarty/internals/core.process_cached_inserts.php which is 1 shorter. If I do a tar bal from the head i get this in the top directory 22b79fe24110d d22b79fe24110d -ffd22b79fe24110d x-ffd22b79fe24110d 2b79fe24110d ex-ffd22b79fe24110d flex-ffd22b79fe24110d xflex-ffd22b79fe24110d 79fe24110d fd22b79fe24110d lex-ffd22b79fe24110d b79fe24110dffd22b79fe24110d mxflex-ffd22b79fe24110d while the zip just produces mxflex-ffd22b79fe24110d It seems how closer I come to the latest the more directories the tarbal creates. It must be something specific for this repo because if I do a tarball from my local copy of fossil (hence the same version) I don't see multiple directories. -- Rene ___ fossil-users mailing list fossil-users@lists.fossil-scm.org http://lists.fossil-scm.org:8080/cgi-bin/mailman/listinfo/fossil-users___ fossil-users mailing list fossil-users@lists.fossil-scm.org http://lists.fossil-scm.org:8080/cgi-bin/mailman/listinfo/fossil-users