{"thread":{"id":"12656","subject":"[PATCH 00/16] solaris portability patches","startedAt":"2008-03-12T21:29:32Z","lastAt":"2008-03-13T13:15:49Z","messageCount":3,"participants":["Jeff King","Junio C Hamano"],"isPatch":true,"patchVersion":1,"patchTotal":16},"messages":[{"id":"71846","messageId":"20080312212932.GA26286@coredump.intra.peff.net","threadId":"12656","inReplyTo":null,"subject":"[PATCH 00/16] solaris portability patches","fromName":"Jeff King","fromEmail":"peff@peff.net","sentAt":"2008-03-12T21:29:32Z","receivedAt":"2008-03-12T21:29:32Z","isPatch":true,"sender":{"key":"peff@peff.net","avatar":"https://avatars.githubusercontent.com/u/45925?v=4"},"body":"I've been trying to run the testsuite under Solaris without using any of\nthe more fancy tools available. Maybe this is foolhardy, and we should\nsimply say \"at least put /usr/ucb in your PATH if you're going to run\nthe testsuite.\" Even with that, though, some of the patches below still\nfix problems, either because the ucb and xpg4 versions given with\nSolaris also don't work, or because the problem is in a git script\nitself, and I don't think we want to force users to have /usr/ucb at the\nfront of their PATH.\n\nThe series goes on top of the current master.  The first patch is a\nrepost from this morning that was embedded in a thread, but the rest are\nnew. The order of patches is roughly in the order that the bugs come up\nif you try to run the testsuite. :)\n\nIt may be that some are less controversial than others, and I can try to\nre-order if need be.\n\nWith these patches applied, running\n\n  PATH=/usr/bin:/bin /path/to/gmake test\n\npasses with the following exceptions:\n\nt3701-add-interactive.sh\nt7501-commit.sh (only interactive add test)\n  git-add--interactive doesn't work with perl 5.005. I haven't looked\n  into it any more closely.\n\nt9001-send-email.sh\n  send-email doesn't work with perl 5.005 (haven't looked closer)\n\nt3900-i18n-commit.sh\n  I think there are some iconv issues with Japanese charsets. I tried\n  debugging this before but didn't get very far.\n\nt4109-apply-multifrag.sh\nt4110-apply-scan.sh\n  These tests invoke the system 'patch' which doesn't like our git\n  patches very much. Despite having stdout/stderr redirected, it insists\n  on printing \"File to patch?\" to the terminal and waiting for input.\n\nt4116-apply-reverse.sh\n  system tar doesn't recognize typeflag 'g' in our git-archive\n  generated tarfile. It returns an error, which prevents further setup\n  from happening.\n\nt5000-tar-tree.sh\n  The system awk complains about a long awk line. I ran out of time to\n  try tracking it down.\n\nt3901-i18n-patch.sh\nt4024-diff-optimize-common.sh\n  I ran out of time to look more closely at these ones. Grab bag of\n  portability bugs!\n\nThe patches are:\n\n  tr portability fixes\n  t0050: perl portability fix\n  more tr portability test script fixes\n  grep portability fix: don't use \"-e\" or \"-q\"\n  remove use of \"tail -n 1\" and \"tail -1\"\n  add test_cmp function for test scripts\n  t4020: don't use grep -a\n  t4200: use cut instead of sed\n  t6000lib: tr portability fix\n  add NO_EXTERNAL_GREP build option\n  config: add --literal-match option\n  git-submodule: avoid sed input with no newline\n  filter-branch: don't use xargs -0\n  filter-branch: use $SHELL_PATH instead of 'sh'\n  t9112: add missing #!/bin/sh header\n  t7505: use SHELL_PATH in hook\n\n Documentation/git-config.txt       |    7 ++++\n Makefile                           |    8 ++++\n builtin-config.c                   |   50 ++++++++++++++++++++-------\n builtin-grep.c                     |    4 +-\n builtin-remote.c                   |    2 +-\n cache.h                            |    2 +-\n config.c                           |   67 ++++++++++++++++++++++++------------\n git-am.sh                          |    2 +-\n git-bisect.sh                      |    4 +-\n git-filter-branch.sh               |    8 ++--\n git-rebase--interactive.sh         |    8 ++--\n git-submodule.sh                   |   19 +++++-----\n t/diff-lib.sh                      |    4 +-\n t/t0003-attributes.sh              |    2 +-\n t/t0020-crlf.sh                    |    2 +-\n t/t0022-crlf-rename.sh             |    2 +-\n t/t0030-stripspace.sh              |   34 +++++++++---------\n t/t0050-filesystem.sh              |    4 +-\n t/t1005-read-tree-reset.sh         |    2 +-\n t/t1300-repo-config.sh             |   17 ++++++++-\n t/t2200-add-update.sh              |    2 +-\n t/t3001-ls-files-others-exclude.sh |    2 +-\n t/t3050-subprojects-fetch.sh       |    4 +-\n t/t3060-ls-files-with-tree.sh      |    2 +-\n t/t3201-branch-contains.sh         |    6 ++--\n t/t3300-funny-names.sh             |    6 ++--\n t/t3404-rebase-interactive.sh      |   11 +++---\n t/t3405-rebase-malformed.sh        |    4 +-\n t/t3406-rebase-message.sh          |    2 +-\n t/t3701-add-interactive.sh         |    4 +-\n t/t3800-mktag.sh                   |    2 +-\n t/t3902-quoted.sh                  |   16 ++++----\n t/t3903-stash.sh                   |    2 +-\n t/t4020-diff-external.sh           |    5 ++-\n t/t4020/diff.NUL                   |  Bin 0 -> 116 bytes\n t/t4022-diff-rewrite.sh            |    5 ++-\n t/t4023-diff-rename-typechange.sh  |    6 ++--\n t/t4024-diff-optimize-common.sh    |    2 +-\n t/t4025-hunk-header.sh             |    2 +-\n t/t4027-diff-submodule.sh          |    6 ++--\n t/t4103-apply-binary.sh            |    4 +-\n t/t4105-apply-fuzz.sh              |    2 +-\n t/t4116-apply-reverse.sh           |    4 +-\n t/t4125-apply-ws-fuzz.sh           |    8 ++--\n t/t4150-am-subdir.sh               |   10 +++---\n t/t4200-rerere.sh                  |    4 +-\n t/t4201-shortlog.sh                |    2 +-\n t/t5300-pack-object.sh             |    2 +-\n t/t5302-pack-index.sh              |    4 +-\n t/t5400-send-pack.sh               |    2 +-\n t/t5505-remote.sh                  |    6 ++--\n t/t5510-fetch.sh                   |    2 +-\n t/t5512-ls-remote.sh               |    8 ++--\n t/t6000lib.sh                      |    5 ++-\n t/t6004-rev-list-path-optim.sh     |    2 +-\n t/t6009-rev-list-parent.sh         |    2 +-\n t/t6027-merge-binary.sh            |    4 +-\n t/t6029-merge-subtree.sh           |    2 +-\n t/t6030-bisect-porcelain.sh        |    6 ++--\n t/t7003-filter-branch.sh           |    2 +-\n t/t7010-setup.sh                   |   18 +++++-----\n t/t7201-co.sh                      |   18 +++++-----\n t/t7501-commit.sh                  |   14 ++++----\n t/t7502-commit.sh                  |   14 ++++----\n t/t7502-status.sh                  |    4 +-\n t/t7505-prepare-commit-msg-hook.sh |    3 +-\n t/t7600-merge.sh                   |    8 ++--\n t/t8003-blame.sh                   |    4 +-\n t/t9001-send-email.sh              |    2 +-\n t/t9112-git-svn-md5less-file.sh    |    2 +\n t/t9116-git-svn-log.sh             |   24 ++++++------\n t/t9200-git-cvsexportcommit.sh     |   14 ++++----\n t/t9400-git-cvsserver-server.sh    |   28 +++++++-------\n t/test-lib.sh                      |   18 ++++++++++\n test-sha1.sh                       |    4 +-\n 75 files changed, 347 insertions(+), 246 deletions(-)\n create mode 100644 t/t4020/diff.NUL\n"},{"id":"71907","messageId":"7v4pbbys4a.fsf@gitster.siamese.dyndns.org","threadId":"12656","inReplyTo":"20080312212932.GA26286@coredump.intra.peff.net","subject":"Re: [PATCH 00/16] solaris portability patches","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2008-03-13T07:56:21Z","receivedAt":"2008-03-13T07:56:21Z","isPatch":true,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"Whew, a huge series.\n\nI've queued the following for now.\n\n    [PATCH 01/16] tr portability fixes\n    [PATCH 02/16] t0050: perl portability fix\n    [PATCH 03/16] more tr portability test script fixes\n    [PATCH 04/16] grep portability fix: don't use \"-e\" or \"-q\"\n    [PATCH 05/16] remove use of \"tail -n 1\" and \"tail -1\"\n    [PATCH 06/16] add test_cmp function for test scripts\n    [PATCH 07/16] t4020: don't use grep -a\n    [PATCH 09/16] t6000lib: tr portability fix\n    [PATCH 10/16] add NO_EXTERNAL_GREP build option\n    [PATCH 13/16] filter-branch: don't use xargs -0\n    [PATCH 14/16] filter-branch: use $SHELL_PATH instead of 'sh'\n    [PATCH 15/16] t9112: add missing #!/bin/sh header\n    [PATCH 16/16] t7505: use SHELL_PATH in hook\n\nbut being this close to -rc0 I do not really enjoy too disruptive\npatches.\n"},{"id":"71934","messageId":"20080313131549.GK19485@coredump.intra.peff.net","threadId":"12656","inReplyTo":"7v4pbbys4a.fsf@gitster.siamese.dyndns.org","subject":"Re: [PATCH 00/16] solaris portability patches","fromName":"Jeff King","fromEmail":"peff@peff.net","sentAt":"2008-03-13T13:15:49Z","receivedAt":"2008-03-13T13:15:49Z","isPatch":true,"sender":{"key":"peff@peff.net","avatar":"https://avatars.githubusercontent.com/u/45925?v=4"},"body":"On Thu, Mar 13, 2008 at 12:56:21AM -0700, Junio C Hamano wrote:\n\n> Whew, a huge series.\n\nYes, sorry to spam you when we are supposed to be freezing. I saw that\nWhit was still trying to run the testsuite, and I thought \"I'll just\ntake a quick peek at getting this to run.\" 16 patches and a half day's\nmissing day-job work later, you see the result. :)\n\n> I've queued the following for now.\n> \n>     [PATCH 01/16] tr portability fixes\n>     [PATCH 02/16] t0050: perl portability fix\n>     [PATCH 03/16] more tr portability test script fixes\n>     [PATCH 04/16] grep portability fix: don't use \"-e\" or \"-q\"\n>     [PATCH 05/16] remove use of \"tail -n 1\" and \"tail -1\"\n>     [PATCH 06/16] add test_cmp function for test scripts\n>     [PATCH 07/16] t4020: don't use grep -a\n>     [PATCH 09/16] t6000lib: tr portability fix\n>     [PATCH 10/16] add NO_EXTERNAL_GREP build option\n>     [PATCH 13/16] filter-branch: don't use xargs -0\n>     [PATCH 14/16] filter-branch: use $SHELL_PATH instead of 'sh'\n>     [PATCH 15/16] t9112: add missing #!/bin/sh header\n>     [PATCH 16/16] t7505: use SHELL_PATH in hook\n> \n> but being this close to -rc0 I do not really enjoy too disruptive\n> patches.\n\nA lot of these are \"help the test scripts run\" and not \"help git run.\"\nHowever, the \"help git run\" ones are probably nice for Solaris people.\nOTOH, most of them probably have xpg4 in their PATH, which helps a lot\n(although things like 14/16 mean filter-branch is totally broken for\nanyone on Solaris).\n\nI think the ones you dropped make sense. I'll put \"try to clean up\nbuiltin-config\" on my post-1.5.5 todo. In the meantime, I think it is\nonly hurting git-submodule users on Solaris who don't have xpg4 in their\nPATH.\n\nThe t4200 thing is potentially showing a bug in builtin-rerere, so I\nthink following up on that is worthwhile. I'll see if I can construct a\nmulti-file test case to trigger it.\n\n-Peff\n"}]}