{"thread":{"id":"33718","subject":"What's cooking in git.git (May 2013, #01; Fri, 3)","startedAt":"2013-05-03T23:14:08Z","lastAt":"2013-05-15T06:19:15Z","messageCount":8,"participants":["Junio C Hamano","Torsten Bögershausen","Mark Levedahl","Ramsay Jones","Philip Oakley","Tay Ray Chuan"],"isPatch":false,"patchVersion":null,"patchTotal":null},"messages":[{"id":"216380","messageId":"7vvc6zwta7.fsf@alter.siamese.dyndns.org","threadId":"33718","inReplyTo":null,"subject":"What's cooking in git.git (May 2013, #01; Fri, 3)","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2013-05-03T23:14:08Z","receivedAt":"2013-05-03T23:14:08Z","isPatch":false,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"Here are the topics that have been cooking.  Commits prefixed with\n'-' are only in 'pu' (proposed updates) while commits prefixed with\n'+' are in 'next'.\n\nThe tip of the 'master' branch is tagged as v1.8.3-rc1.  We seem to\nhave a few interesting topics that are being discussed but it is\nunlikely I'll be picking them up in 'pu'.  As we already have merged\nenough changes to 'master' during this cycle that can potentially\ncause unforseen regressions, let's not merge topics that are not\nregression fixes from 'next' to 'master', either, until the final\nrelease.\n\nYou can find the changes described here in the integration branches\nof the repositories listed at\n\n    http://git-blame.blogspot.com/p/git-public-repositories.html\n\n--------------------------------------------------\n[Graduated to \"master\"]\n\n* hb/git-pm-tempfile (2013-04-29) 1 commit\n  (merged to 'next' on 2013-04-29 at fecc6b0)\n + Git.pm: call tempfile from File::Temp as a regular function\n\n\n* mb/relnotes-1.8.3-typofix (2013-04-30) 1 commit\n - Fix grammar in the 1.8.3 release notes.\n\n\n* rs/pp-user-info-without-extra-allocation (2013-04-25) 3 commits\n  (merged to 'next' on 2013-04-29 at 13eafc3)\n + pretty: remove intermediate strbufs from pp_user_info()\n + pretty: simplify output line length calculation in pp_user_info()\n + pretty: simplify input line length calculation in pp_user_info()\n\n\n* tr/remote-tighten-commandline-parsing (2013-04-24) 3 commits\n  (merged to 'next' on 2013-04-29 at 46a1043)\n + remote: 'show' and 'prune' can take more than one remote\n + remote: check for superfluous arguments in 'git remote add'\n + remote: add a test for extra arguments, according to docs\n\n\n* tr/unpack-entry-use-after-free-fix (2013-04-30) 1 commit\n - unpack_entry: avoid freeing objects in base cache\n\n Fix for use-after-free regression in 1.8.3-rc0.\n\n\n* zk/prompt-rebase-step (2013-04-25) 1 commit\n  (merged to 'next' on 2013-04-25 at a8264bf)\n + bash-prompt.sh: show where rebase is at when stopped\n\n--------------------------------------------------\n[New Topics]\n\n* fc/at-head (2013-05-02) 5 commits\n - Add new @ shortcut for HEAD\n - sha1_name: refactor reinterpret()\n - sha1_name: compare variable with constant, not constant with variable\n - sha1_name: remove unnecessary braces\n - sha1_name: remove no-op\n\n People are too lazy to type four capital letters \"HEAD\" and want to\n use a single line-noise \"@\" instead.\n\n\n* fc/remote-bzr (2013-04-30) 18 commits\n - remote-bzr: access branches only when needed\n - remote-bzr: delay peer branch usage\n - remote-bzr: iterate revisions properly\n - remote-bzr: improve progress reporting\n - remote-bzr: add option to specify branches\n - remote-bzr: add custom method to find branches\n - remote-bzr: improve author sanitazion\n - remote-bzr: add support for shared repo\n - remote-bzr: fix branch names\n - remote-bzr: add support for bzr repos\n - remote-bzr: use branch variable when appropriate\n - remote-bzr: fix partially pushed merge\n - remote-bzr: fixes for branch diverge\n - remote-bzr: add support to push merges\n - remote-bzr: always try to update the worktree\n - remote-bzr: fix order of locking in CustomTree\n - remote-bzr: delay blob fetching until the very end\n - remote-bzr: cleanup CustomTree\n\n\n* jk/lookup-object-prefer-latest (2013-05-02) 1 commit\n - lookup_object: prioritize recently found objects\n\n\n* jk/subtree-do-not-push-if-split-fails (2013-05-01) 1 commit\n - contrib/subtree: don't delete remote branches if split fails\n\n--------------------------------------------------\n[Stalled]\n\n* mg/more-textconv (2013-04-23) 7 commits\n - git grep: honor textconv by default\n - grep: honor --textconv for the case rev:path\n - grep: allow to use textconv filters\n - t7008: demonstrate behavior of grep with textconv\n - cat-file: do not die on --textconv without textconv filters\n - show: honor --textconv for blobs\n - t4030: demonstrate behavior of show with textconv\n\n Rerolled. I am not sure if I like \"show <blob>\" and \"grep\" that use\n textconv by default, though.\n\n\n* mh/multimail (2013-04-21) 1 commit\n - git-multimail: a replacement for post-receive-email\n\n Waiting for comments.\n\n\n* jc/format-patch (2013-04-22) 2 commits\n - format-patch: --inline-single\n - format-patch: rename \"no_inline\" field\n\n A new option to send a single patch to the standard output to be\n appended at the bottom of a message.  I personally have no need for\n this, but it was easy enough to cobble together.  Tests, docs and\n stripping out more MIMEy stuff are left as exercises to interested\n parties.\n\n Not ready for inclusion.\n\n\n* jk/gitweb-utf8 (2013-04-08) 4 commits\n - gitweb: Fix broken blob action parameters on blob/commitdiff pages\n - gitweb: Don't append ';js=(0|1)' to external links\n - gitweb: Make feed title valid utf8\n - gitweb: Fix utf8 encoding for blob_plain, blobdiff_plain, commitdiff_plain, and patch\n\n Various fixes to gitweb.\n\n Waiting for a reroll after a review.\n\n\n* jk/commit-info-slab (2013-04-19) 3 commits\n - commit-slab: introduce a macro to define a slab for new type\n - commit-slab: avoid large realloc\n - commit: allow associating auxiliary info on-demand\n (this branch is used by jc/show-branch.)\n\n Technology demonstration to show a way we could use unbound number\n of flag bits on commit objects.\n\n\n* jn/config-ignore-inaccessible (2013-04-15) 1 commit\n - config: allow inaccessible configuration under $HOME\n\n When $HOME is misconfigured to point at an unreadable directory, we\n used to complain and die. This loosens the check.\n\n I do not think we agreed that this is a good idea, though.\n\n--------------------------------------------------\n[Cooking]\n\n* fc/completion (2013-04-27) 9 commits\n - completion: remove __git_index_file_list_filter()\n - completion: add space after completed filename\n - completion: add hack to enable file mode in bash < 4\n - completion: refactor __git_complete_index_file()\n - completion: refactor diff_index wrappers\n - completion: use __gitcompadd for __gitcomp_file\n - completion; remove unuseful comments\n - completion: document tilde expansion failure in tests\n - completion: add file completion tests\n\n I saw this discussed somewhat. Is everybody happy with this\n version?  This is its v2, in the $gmane/222682 thread.\n\n\n* jk/test-output (2013-04-29) 2 commits\n  (merged to 'next' on 2013-05-01 at 63827c9)\n + test output: respect $TEST_OUTPUT_DIRECTORY\n + t/Makefile: fix result handling with TEST_OUTPUT_DIRECTORY\n\n When TEST_OUTPUT_DIRECTORY setting is used, it was handled somewhat\n inconsistently between the test framework and t/Makefile, and logic\n to summarize the results looked at a wrong place.\n\n Will cook in 'next'.\n\n\n* rj/mingw-cygwin (2013-04-28) 2 commits\n - cygwin: Remove the CYGWIN_V15_WIN32API build variable\n - mingw: rename WIN32 cpp macro to GIT_WINDOWS_NATIVE\n\n Cygwin portability; both were reviewed by Jonathan, and the tip one\n seems to want a bit further explanation.  Needs positive report\n from Cygwin 1.7 users who have been on 1.7 to make sure it does not\n regress for them.\n\n\n* rj/sparse (2013-04-28) 10 commits\n  (merged to 'next' on 2013-05-01 at 649e16c)\n + sparse: Fix mingw_main() argument number/type errors\n + compat/mingw.c: Fix some sparse warnings\n + compat/win32mmap.c: Fix some sparse warnings\n + compat/poll/poll.c: Fix a sparse warning\n + compat/win32/pthread.c: Fix a sparse warning\n + compat/unsetenv.c: Fix a sparse warning\n + compat/nedmalloc: Fix compiler warnings on linux\n + compat/nedmalloc: Fix some sparse warnings\n + compat/fnmatch/fnmatch.c: Fix a sparse error\n + compat/regex/regexec.c: Fix some sparse warnings\n\n Will cook in 'next'.\n\n\n* js/transport-helper-error-reporting-fix (2013-04-28) 3 commits\n  (merged to 'next' on 2013-04-29 at 8cc4bb8)\n + git-remote-testgit: build it to run under $SHELL_PATH\n + git-remote-testgit: further remove some bashisms\n + git-remote-testgit: avoid process substitution\n (this branch uses fc/transport-helper-error-reporting.)\n\n Finishing touches to fc/transport-helper-error-reporting topic.\n Will cook in 'next'.\n\n\n* mh/fetch-into-shallow (2013-05-02) 2 commits\n  (merged to 'next' on 2013-05-03 at 3fadc61)\n + t5500: add test for fetching with an unknown 'shallow'\n  (merged to 'next' on 2013-04-29 at a167d3e)\n + upload-pack: ignore 'shallow' lines with unknown obj-ids\n\n Will cook in 'next'.\n\n\n* kb/full-history-compute-treesame-carefully (2013-04-30) 8 commits\n - revision.c: discount UNINTERESTING parents\n - simplify-merges: drop merge from irrelevant side branch\n - simplify-merges: never remove all TREESAME parents\n - t6012: update test for tweaked full-history traversal\n - revision.c: Make --full-history consider more merges\n - rev-list-options.txt: correct TREESAME for P\n - t6019: test file dropped in -s ours merge\n - decorate.c: compact table when growing\n\n Major update to a very core part of the system to improve culling\n of irrelevant parents while traversing a mergy history.\n\n Will not be a 1.8.3 material.\n\n\n* jh/checkout-auto-tracking (2013-04-21) 8 commits\n  (merged to 'next' on 2013-04-22 at 2356700)\n + glossary: Update and rephrase the definition of a remote-tracking branch\n + branch.c: Validate tracking branches with refspecs instead of refs/remotes/*\n + t9114.2: Don't use --track option against \"svn-remote\"-tracking branches\n + t7201.24: Add refspec to keep --track working\n + t3200.39: tracking setup should fail if there is no matching refspec.\n + checkout: Use remote refspecs when DWIMming tracking branches\n + t2024: Show failure to use refspec when DWIMming remote branch names\n + t2024: Add tests verifying current DWIM behavior of 'git checkout <branch>'\n\n Updates \"git checkout foo\" that DWIMs the intended \"upstream\" and\n turns it into \"git checkout -t -b foo remotes/origin/foo\" to\n correctly take existing remote definitions into account.  The\n remote \"origin\" may be what uniquely map its own branch to\n remotes/some/where/foo but that some/where may not be \"origin\".\n\n Will cook in 'next'.\n\n\n* jc/prune-all (2013-04-25) 4 commits\n  (merged to 'next' on 2013-04-26 at 97a7387)\n + prune: introduce OPT_EXPIRY_DATE() and use it\n  (merged to 'next' on 2013-04-22 at b00ccf6)\n + api-parse-options.txt: document \"no-\" for non-boolean options\n + git-gc.txt, git-reflog.txt: document new expiry options\n + date.c: add parse_expiry_date()\n (this branch is used by mh/packed-refs-various.)\n\n We used the approxidate() parser for \"--expire=<timestamp>\" options\n of various commands, but it is better to treat --expire=all and\n --expire=now a bit more specially than using the current timestamp.\n Update \"git gc\" and \"git reflog\" with a new parsing function for\n expiry dates.\n\n Will cook in 'next'.\n\n\n* as/check-ignore (2013-04-29) 6 commits\n  (merged to 'next' on 2013-04-30 at 646931f)\n + t0008: use named pipe (FIFO) to test check-ignore streaming\n  (merged to 'next' on 2013-04-21 at 7515aa8)\n + Documentation: add caveats about I/O buffering for check-{attr,ignore}\n + check-ignore: allow incremental streaming of queries via --stdin\n + check-ignore: move setup into cmd_check_ignore()\n + check-ignore: add -n / --non-matching option\n + t0008: remove duplicated test fixture data\n\n Enhance \"check-ignore\" (1.8.2 update) to work more like \"check-attr\"\n over bidi-pipes.\n\n Will cook in 'next'.\n\n\n* mh/packed-refs-various (2013-05-01) 33 commits\n  (merged to 'next' on 2013-05-01 at e527153)\n + refs: handle the main ref_cache specially\n + refs: change do_for_each_*() functions to take ref_cache arguments\n + pack_one_ref(): do some cheap tests before a more expensive one\n + pack_one_ref(): use write_packed_entry() to do the writing\n + pack_one_ref(): use function peel_entry()\n + refs: inline function do_not_prune()\n + pack_refs(): change to use do_for_each_entry()\n + refs: use same lock_file object for both ref-packing functions\n + pack_one_ref(): rename \"path\" parameter to \"refname\"\n + pack-refs: merge code from pack-refs.{c,h} into refs.{c,h}\n + pack-refs: rename handle_one_ref() to pack_one_ref()\n + refs: extract a function write_packed_entry()\n + repack_without_ref(): write peeled refs in the rewritten file\n + t3211: demonstrate loss of peeled refs if a packed ref is deleted\n + refs: change how packed refs are deleted\n + search_ref_dir(): return an index rather than a pointer\n + repack_without_ref(): silence errors for dangling packed refs\n + t3210: test for spurious error messages for dangling packed refs\n + refs: change the internal reference-iteration API\n + refs: extract a function peel_entry()\n + peel_ref(): fix return value for non-peelable, not-current reference\n + peel_object(): give more specific information in return value\n + refs: extract function peel_object()\n + refs: extract a function ref_resolves_to_object()\n + repack_without_ref(): use function get_packed_ref()\n + peel_ref(): use function get_packed_ref()\n + get_packed_ref(): return a ref_entry\n + do_for_each_ref_in_dirs(): remove dead code\n + refs: define constant PEELED_LINE_LENGTH\n + refs: document how current_ref is used\n + refs: document do_for_each_ref() and do_one_ref()\n + refs: document the fields of struct ref_value\n + refs: document flags constants REF_*\n (this branch uses jc/prune-all.)\n\n Updates reading and updating packed-refs file, correcting corner\n case bugs.\n\n Will cook in 'next'.\n\n\n* fc/transport-helper-error-reporting (2013-04-25) 10 commits\n  (merged to 'next' on 2013-04-25 at 3358f1a)\n + t5801: \"VAR=VAL shell_func args\" is forbidden\n  (merged to 'next' on 2013-04-22 at 5ba6467)\n + transport-helper: update remote helper namespace\n + transport-helper: trivial code shuffle\n + transport-helper: warn when refspec is not used\n + transport-helper: clarify pushing without refspecs\n + transport-helper: update refspec documentation\n + transport-helper: clarify *:* refspec\n + transport-helper: improve push messages\n + transport-helper: mention helper name when it dies\n + transport-helper: report errors properly\n (this branch is used by js/transport-helper-error-reporting-fix.)\n\n Update transport helper to report errors and maintain ref hierarchy\n used to keep track of remote helper state better.\n\n Will cook in 'next', but may be 1.8.3 material depending on how things go.\n\n\n* jk/submodule-subdirectory-ok (2013-04-24) 3 commits\n  (merged to 'next' on 2013-04-24 at 6306b29)\n + submodule: fix quoting in relative_path()\n  (merged to 'next' on 2013-04-22 at f211e25)\n + submodule: drop the top-level requirement\n + rev-parse: add --prefix option\n\n Allow various subcommands of \"git submodule\" to be run not from the\n top of the working tree of the superproject.\n\n Will cook in 'next'.\n\n\n* jl/submodule-mv (2013-04-23) 5 commits\n  (merged to 'next' on 2013-04-23 at c04f574)\n + submodule.c: duplicate real_path's return value\n  (merged to 'next' on 2013-04-19 at 45ae3c9)\n + rm: delete .gitmodules entry of submodules removed from the work tree\n + Teach mv to update the path entry in .gitmodules for moved submodules\n + Teach mv to move submodules using a gitfile\n + Teach mv to move submodules together with their work trees\n\n \"git mv A B\" when moving a submodule A does \"the right thing\",\n inclusing relocating its working tree and adjusting the paths in\n the .gitmodules file.\n\n Will cook in 'next'.\n\n\n* jn/add-2.0-u-A-sans-pathspec (2013-04-26) 1 commit\n - git add: -u/-A now affects the entire working tree\n\n Will cook in 'next' until Git 2.0.\n\n\n* nd/magic-pathspecs (2013-03-31) 45 commits\n . Rename field \"raw\" to \"_raw\" in struct pathspec\n . pathspec: support :(glob) syntax\n . pathspec: make --literal-pathspecs disable pathspec magic\n . pathspec: support :(literal) syntax for noglob pathspec\n . Kill limit_pathspec_to_literal() as it's only used by parse_pathspec()\n . parse_pathspec: preserve prefix length via PATHSPEC_PREFIX_ORIGIN\n . parse_pathspec: make sure the prefix part is wildcard-free\n . tree-diff: remove the use of pathspec's raw[] in follow-rename codepath\n . Remove match_pathspec() in favor of match_pathspec_depth()\n . Remove init_pathspec() in favor of parse_pathspec()\n . Remove diff_tree_{setup,release}_paths\n . Convert common_prefix() to use struct pathspec\n . Convert add_files_to_cache to take struct pathspec\n . Convert {read,fill}_directory to take struct pathspec\n . Convert refresh_index to take struct pathspec\n . Convert report_path_error to take struct pathspec\n . checkout: convert read_tree_some to take struct pathspec\n . Convert unmerge_cache to take struct pathspec\n . Convert run_add_interactive to use struct pathspec\n . Convert read_cache_preload() to take struct pathspec\n . reset: convert to use parse_pathspec\n . add: convert to use parse_pathspec\n . check-ignore: convert to use parse_pathspec\n . archive: convert to use parse_pathspec\n . ls-files: convert to use parse_pathspec\n . rm: convert to use parse_pathspec\n . checkout: convert to use parse_pathspec\n . rerere: convert to use parse_pathspec\n . status: convert to use parse_pathspec\n . commit: convert to use parse_pathspec\n . clean: convert to use parse_pathspec\n . Guard against new pathspec magic in pathspec matching code\n . parse_pathspec: support prefixing original patterns\n . parse_pathspec: support stripping/checking submodule paths\n . parse_pathspec: support stripping submodule trailing slashes\n . parse_pathspec: a special flag for max_depth feature\n . Convert some get_pathspec() calls to parse_pathspec()\n . parse_pathspec: add PATHSPEC_PREFER_{CWD,FULL}\n . parse_pathspec: save original pathspec for reporting\n . Add parse_pathspec() that converts cmdline args to struct pathspec\n . pathspec: add copy_pathspec\n . pathspec: i18n-ize error strings in pathspec parsing code\n . Move struct pathspec and related functions to pathspec.[ch]\n . clean: remove unused variable \"seen\"\n . setup.c: check that the pathspec magic ends with \")\"\n\n Migrate the rest of codebase to use \"struct pathspec\" more.\n\n This has nasty conflicts with kb/status-ignored-optim-2,\n as/check-ignore and tr/line-log; I've already asked Duy to hold\n this and later rebase on top of them.\n\n Will defer.\n\n\n* tr/line-log (2013-04-22) 13 commits\n  (merged to 'next' on 2013-04-22 at 8f2c1de)\n + git-log(1): remove --full-line-diff description\n  (merged to 'next' on 2013-04-21 at cd92620)\n + line-log: fix documentation formatting\n  (merged to 'next' on 2013-04-15 at 504559e)\n + log -L: improve comments in process_all_files()\n + log -L: store the path instead of a diff_filespec\n + log -L: test merge of parallel modify/rename\n + t4211: pass -M to 'git log -M -L...' test\n  (merged to 'next' on 2013-04-05 at 5afb00c)\n + log -L: fix overlapping input ranges\n + log -L: check range set invariants when we look it up\n  (merged to 'next' on 2013-04-01 at 5be920c)\n + Speed up log -L... -M\n + log -L: :pattern:file syntax to find by funcname\n + Implement line-history search (git log -L)\n + Export rewrite_parents() for 'log -L'\n + Refactor parse_loc\n\n Will cook in 'next'.\n\n\n* jc/push-2.0-default-to-simple (2013-04-03) 1 commit\n - push: switch default from \"matching\" to \"simple\"\n\n The early bits to adjust the tests have been merged to 'master'.\n\n Will cook in 'next' until Git 2.0.\n\n\n* jc/add-2.0-ignore-removal (2013-04-22) 1 commit\n - git add <pathspec>... defaults to \"-A\"\n\n Updated endgame for \"git add <pathspec>\" that defaults to \"--all\"\n aka \"--no-ignore-removal\".\n\n Will cook in 'next' until Git 2.0.\n"},{"id":"216612","messageId":"51890F48.3090409@web.de","threadId":"33718","inReplyTo":"7vvc6zwta7.fsf@alter.siamese.dyndns.org","subject":"Problems with Windows, Was: What's cooking in git.git (May 2013, #01; Fri, 3)","fromName":"Torsten Bögershausen","fromEmail":"tboegi@web.de","sentAt":"2013-05-07T14:27:20Z","receivedAt":"2013-05-07T14:27:20Z","isPatch":false,"sender":{"key":"tboegi@web.de","avatar":"https://avatars.githubusercontent.com/u/7138363?v=4"},"body":"On 2013-05-04 01.14, Junio C Hamano wrote:\n> \n>  Cygwin portability; both were reviewed by Jonathan, and the tip one\n>  seems to want a bit further explanation.  Needs positive report\n>  from Cygwin 1.7 users who have been on 1.7 to make sure it does not\n>  regress for them.\n\nI was trying to verify that cygwin 1.7 is still Ok, but got puzzled.\n\nRunning the test suite under cygwin doesn't seem to work any more (?):\n\nScenario 1:\nThe PC is running alone, and goes into the screen saver.\nPressing CTRL-ALT-DEL didn't get any effect.\n\nScenario 2:\nThe PC didn't react any more, when the test suite was run in background.\nIn 3 or 4 cases the PC needed to be reboot hardly.\n\nUsing the commits before and after this change makes the test suite hang \nas well at some point, then it hangs somewhere at TC 3000--4000.\n\nScenario 4:\nThe I disabled the screensaver, upgdated cygwin,\n and went back to an older commit:\nThe latest run from commit 52d63e70, April 28,\nhangs in TC 5500, ok 26 clone shallow object count.\n\nI can see 2 times \ngit.exe pull --depth 4 ..A \n\nScenario 5:\nThe run of today 1.8.3-rc1, hangs in t5510,\nsome git.exe are running fetch. (or pull)\n\n\nIt seems as if some process/exes are not terminated\nin the way it should be.\n\nI will try on a different machine,\ncomments are wellcome\n/Torsten\n"},{"id":"216674","messageId":"51899CBF.2020805@gmail.com","threadId":"33718","inReplyTo":"51890F48.3090409@web.de","subject":"Re: Problems with Windows, Was: What's cooking in git.git (May 2013, #01; Fri, 3)","fromName":"Mark Levedahl","fromEmail":"mlevedahl@gmail.com","sentAt":"2013-05-08T00:30:55Z","receivedAt":"2013-05-08T00:30:55Z","isPatch":false,"sender":{"key":"mdl123@verizon.net","avatar":"https://avatars.githubusercontent.com/u/5302462?v=4"},"body":"On 05/07/2013 10:27 AM, Torsten Bögershausen wrote:\n> On 2013-05-04 01.14, Junio C Hamano wrote:\n>>\n>>   Cygwin portability; both were reviewed by Jonathan, and the tip one\n>>   seems to want a bit further explanation.  Needs positive report\n>>   from Cygwin 1.7 users who have been on 1.7 to make sure it does not\n>>   regress for them.\n>\n> I was trying to verify that cygwin 1.7 is still Ok, but got puzzled.\n>\n> Running the test suite under cygwin doesn't seem to work any more (?):\n>\n> Scenario 1:\n> The PC is running alone, and goes into the screen saver.\n> Pressing CTRL-ALT-DEL didn't get any effect.\n>\n> Scenario 2:\n> The PC didn't react any more, when the test suite was run in background.\n> In 3 or 4 cases the PC needed to be reboot hardly.\n>\n> Using the commits before and after this change makes the test suite hang\n> as well at some point, then it hangs somewhere at TC 3000--4000.\n>\n> Scenario 4:\n> The I disabled the screensaver, upgdated cygwin,\n>   and went back to an older commit:\n> The latest run from commit 52d63e70, April 28,\n> hangs in TC 5500, ok 26 clone shallow object count.\n>\n> I can see 2 times\n> git.exe pull --depth 4 ..A\n>\n> Scenario 5:\n> The run of today 1.8.3-rc1, hangs in t5510,\n> some git.exe are running fetch. (or pull)\n>\n>\n> It seems as if some process/exes are not terminated\n> in the way it should be.\n>\n> I will try on a different machine,\n> comments are wellcome\n> /Torsten\n>\n\nI have run into very similar problems trying to test these patches, so I \ndeclined to reply thinking someone else might have better or at least \nexplicable results. I am able to build git on cygwin 1.7 using the \nproposed patches, it seems to work, but I've run into strange problems \nsuch as the main git repo becoming corrupted, no idea how or why.\n\nMark\n"},{"id":"216711","messageId":"518A68C1.8010802@web.de","threadId":"33718","inReplyTo":"51899CBF.2020805@gmail.com","subject":"Re: Problems with Windows, Was: What's cooking in git.git (May 2013, #01; Fri, 3)","fromName":"Torsten Bögershausen","fromEmail":"tboegi@web.de","sentAt":"2013-05-08T15:01:21Z","receivedAt":"2013-05-08T15:01:21Z","isPatch":false,"sender":{"key":"tboegi@web.de","avatar":"https://avatars.githubusercontent.com/u/7138363?v=4"},"body":"On 2013-05-08 02.30, Mark Levedahl wrote:\n> On 05/07/2013 10:27 AM, Torsten Bögershausen wrote:\n>> On 2013-05-04 01.14, Junio C Hamano wrote:\n>>>\n>>>   Cygwin portability; both were reviewed by Jonathan, and the tip one\n>>>   seems to want a bit further explanation.  Needs positive report\n>>>   from Cygwin 1.7 users who have been on 1.7 to make sure it does not\n>>>   regress for them.\n>>\n>> I was trying to verify that cygwin 1.7 is still Ok, but got puzzled.\n>>\n>> Running the test suite under cygwin doesn't seem to work any more (?):\n>>\n>> Scenario 1:\n>> The PC is running alone, and goes into the screen saver.\n>> Pressing CTRL-ALT-DEL didn't get any effect.\n>>\n>> Scenario 2:\n>> The PC didn't react any more, when the test suite was run in background.\n>> In 3 or 4 cases the PC needed to be reboot hardly.\n>>\n>> Using the commits before and after this change makes the test suite hang\n>> as well at some point, then it hangs somewhere at TC 3000--4000.\n>>\n>> Scenario 4:\n>> The I disabled the screensaver, upgdated cygwin,\n>>   and went back to an older commit:\n>> The latest run from commit 52d63e70, April 28,\n>> hangs in TC 5500, ok 26 clone shallow object count.\n>>\n>> I can see 2 times\n>> git.exe pull --depth 4 ..A\n>>\n>> Scenario 5:\n>> The run of today 1.8.3-rc1, hangs in t5510,\n>> some git.exe are running fetch. (or pull)\n>>\n>>\n>> It seems as if some process/exes are not terminated\n>> in the way it should be.\n>>\n>> I will try on a different machine,\n>> comments are wellcome\n>> /Torsten\n>>\n> \n> I have run into very similar problems trying to test these patches, so I declined to reply thinking someone else might have better or at least explicable results. I am able to build git on cygwin 1.7 using the proposed patches, it seems to work, but I've run into strange problems such as the main git repo becoming corrupted, no idea how or why.\n> \n> Mark\n\nI tried 1.8.3-rc1 on a different PC, and it seems to have the same hanging.\nSo I will do some bisecting on master, and try to find out more.\n\n\n \n"},{"id":"216797","messageId":"518BDA49.400@ramsay1.demon.co.uk","threadId":"33718","inReplyTo":"51890F48.3090409@web.de","subject":"Re: Problems with Windows, Was: What's cooking in git.git (May 2013, #01; Fri, 3)","fromName":"Ramsay Jones","fromEmail":"ramsay@ramsay1.demon.co.uk","sentAt":"2013-05-09T17:18:01Z","receivedAt":"2013-05-09T17:18:01Z","isPatch":false,"sender":{"key":"ramsay@ramsayjones.plus.com","avatar":"https://avatars.githubusercontent.com/u/33702710?v=4"},"body":"Torsten Bögershausen wrote:\n> On 2013-05-04 01.14, Junio C Hamano wrote:\n>>\n>>  Cygwin portability; both were reviewed by Jonathan, and the tip one\n>>  seems to want a bit further explanation.  Needs positive report\n>>  from Cygwin 1.7 users who have been on 1.7 to make sure it does not\n>>  regress for them.\n> \n> I was trying to verify that cygwin 1.7 is still Ok, but got puzzled.\n> \n> Running the test suite under cygwin doesn't seem to work any more (?):\n> \n> Scenario 1:\n> The PC is running alone, and goes into the screen saver.\n> Pressing CTRL-ALT-DEL didn't get any effect.\n> \n> Scenario 2:\n> The PC didn't react any more, when the test suite was run in background.\n> In 3 or 4 cases the PC needed to be reboot hardly.\n> \n> Using the commits before and after this change makes the test suite hang \n> as well at some point, then it hangs somewhere at TC 3000--4000.\n> \n> Scenario 4:\n> The I disabled the screensaver, upgdated cygwin,\n>  and went back to an older commit:\n> The latest run from commit 52d63e70, April 28,\n> hangs in TC 5500, ok 26 clone shallow object count.\n> \n> I can see 2 times \n> git.exe pull --depth 4 ..A \n> \n> Scenario 5:\n> The run of today 1.8.3-rc1, hangs in t5510,\n> some git.exe are running fetch. (or pull)\n> \n> \n> It seems as if some process/exes are not terminated\n> in the way it should be.\n> \n> I will try on a different machine,\n> comments are wellcome\n\nHmm, I'm a little puzzled, but not shocked. ;-)\n\nSomebody, I forget who, had already tested Jonathan's patch\non cygwin 1.7 successfully and my follow up patch should be\na no-op on cygwin 1.7; so I'm puzzled! (The high risk should\nhave been on cygwin 1.5).\n\nI'm not shocked because running the test-suite on cygwin has\nbeen a bit of a magical mystery tour for quite some time.\n\nIn about 2007, I could not run the test-suite for about six\nto nine months; it would randomly wedge my laptop solid - I had\nto pull the power-cord out in order to re-boot. (I suspect that\ncommit 9cb18f56fde may have cured that particular problem, but\ndon't quote me on that - I didn't investigate at the time.)\n\nI have noticed that running the tests with 'prove' is more likely\nto prove successful, so my config.mak looks like:\n\n    $ cat config.mak\n    NO_SVN_TESTS=1\n    GIT_TEST_OPTS=--no-color\n    NO_GETTEXT=1\n    DEFAULT_TEST_TARGET=prove\n    GIT_PROVE_OPTS='--timer'\n    $\n\nI currently run the tests like so:\n\n    $ time $(GIT_SKIP_TESTS='t0061.3 t0070.3 t4130 t9010 t9300' make test \\\n    >test-outp13 2>&1)\n\n    real    172m25.311s\n    user    132m15.133s\n    sys     66m43.122s\n    $\n\nThe t0061.3 and t0070.3 failures don't require much discussion. The t4130\nfailure is an intermittent \"racy git\" issue that has been on my TODO list\nfor several years. t9300 also fails intermittently. However, t9010 fails\nevery time for me, hanging the test suite (although ^C interrupts it just\nfine).\n\nI have a \"fix\" for t9010 that looks like:\n\n    diff --git a/t/t9010-svn-fe.sh b/t/t9010-svn-fe.sh\n    index b7eed24..4d01e3b 100755\n    --- a/t/t9010-svn-fe.sh\n    +++ b/t/t9010-svn-fe.sh\n    @@ -22,10 +22,9 @@ try_dump () {\n            maybe_fail_fi=${3:+test_$3} &&\n    \n            {\n    -               $maybe_fail_svnfe test-svn-fe \"$input\" >stream 3<backflow &\n    -       } &&\n    -       $maybe_fail_fi git fast-import --cat-blob-fd=3 <stream 3>backflow &&\n    -       wait $!\n    +               $maybe_fail_svnfe test-svn-fe \"$input\" 3<backflow\n    +       } |\n    +       $maybe_fail_fi git fast-import --cat-blob-fd=3 3>backflow\n     }\n    \n     properties () {\n\nbut I have not tested this patch enough to be happy to submit it (I have\nsome suspicions that it would still fail intermittently, just like t9300).\n\nAlso, commit 7bc0911d (\"test-lib: Fix say_color () not to interpret \\a\\b\\c\nin the message\", 11-10-2012) caused several random test failures. (don't ask\nme why). So, before each test run, I have to apply the following:\n\n    diff --git a/t/test-lib.sh b/t/test-lib.sh\n    index f50f834..ed32b7f 100644\n    --- a/t/test-lib.sh\n    +++ b/t/test-lib.sh\n    @@ -230,7 +230,7 @@ else\n            say_color() {\n                    test -z \"$1\" && test -n \"$quiet\" && return\n                    shift\n    -               printf \"%s\\n\" \"$*\"\n    +               echo -E \"$*\"\n            }\n     fi\n\nwhich effectively reverts that commit.\n\nSo, as I said, a \"magical mystery tour\". :-D\n\nATB,\nRamsay Jones\n"},{"id":"217352","messageId":"5192927E.3030203@web.de","threadId":"33718","inReplyTo":"518BDA49.400@ramsay1.demon.co.uk","subject":"Re: Problems with Windows, Was: What's cooking in git.git (May 2013, #01; Fri, 3)","fromName":"Torsten Bögershausen","fromEmail":"tboegi@web.de","sentAt":"2013-05-14T19:37:34Z","receivedAt":"2013-05-14T19:37:34Z","isPatch":false,"sender":{"key":"tboegi@web.de","avatar":"https://avatars.githubusercontent.com/u/7138363?v=4"},"body":"On 2013-05-09 19.18, Ramsay Jones wrote:\n> Torsten Bögershausen wrote:\n>> On 2013-05-04 01.14, Junio C Hamano wrote:\n>>>\n>>>  Cygwin portability; both were reviewed by Jonathan, and the tip one\n>>>  seems to want a bit further explanation.  Needs positive report\n>>>  from Cygwin 1.7 users who have been on 1.7 to make sure it does not\n>>>  regress for them.\n>>\n>> I was trying to verify that cygwin 1.7 is still Ok, but got puzzled.\n>>\n>> Running the test suite under cygwin doesn't seem to work any more (?):\n>>\n>> Scenario 1:\n>> The PC is running alone, and goes into the screen saver.\n>> Pressing CTRL-ALT-DEL didn't get any effect.\n>>\n>> Scenario 2:\n>> The PC didn't react any more, when the test suite was run in background.\n>> In 3 or 4 cases the PC needed to be reboot hardly.\n>>\n>> Using the commits before and after this change makes the test suite hang \n>> as well at some point, then it hangs somewhere at TC 3000--4000.\n>>\n>> Scenario 4:\n>> The I disabled the screensaver, upgdated cygwin,\n>>  and went back to an older commit:\n>> The latest run from commit 52d63e70, April 28,\n>> hangs in TC 5500, ok 26 clone shallow object count.\n>>\n>> I can see 2 times \n>> git.exe pull --depth 4 ..A \n>>\n>> Scenario 5:\n>> The run of today 1.8.3-rc1, hangs in t5510,\n>> some git.exe are running fetch. (or pull)\n>>\n>>\n>> It seems as if some process/exes are not terminated\n>> in the way it should be.\n>>\n>> I will try on a different machine,\n>> comments are wellcome\n> \n> Hmm, I'm a little puzzled, but not shocked. ;-)\n> \n> Somebody, I forget who, had already tested Jonathan's patch\n> on cygwin 1.7 successfully and my follow up patch should be\n> a no-op on cygwin 1.7; so I'm puzzled! (The high risk should\n> have been on cygwin 1.5).\n> \n> I'm not shocked because running the test-suite on cygwin has\n> been a bit of a magical mystery tour for quite some time.\n> \n> In about 2007, I could not run the test-suite for about six\n> to nine months; it would randomly wedge my laptop solid - I had\n> to pull the power-cord out in order to re-boot. (I suspect that\n> commit 9cb18f56fde may have cured that particular problem, but\n> don't quote me on that - I didn't investigate at the time.)\n> \n> I have noticed that running the tests with 'prove' is more likely\n> to prove successful, so my config.mak looks like:\n> \n>     $ cat config.mak\n>     NO_SVN_TESTS=1\n>     GIT_TEST_OPTS=--no-color\n>     NO_GETTEXT=1\n>     DEFAULT_TEST_TARGET=prove\n>     GIT_PROVE_OPTS='--timer'\n>     $\n> \n> I currently run the tests like so:\n> \n>     $ time $(GIT_SKIP_TESTS='t0061.3 t0070.3 t4130 t9010 t9300' make test \\\n>     >test-outp13 2>&1)\n> \n>     real    172m25.311s\n>     user    132m15.133s\n>     sys     66m43.122s\n>     $\n> \n> The t0061.3 and t0070.3 failures don't require much discussion. The t4130\n> failure is an intermittent \"racy git\" issue that has been on my TODO list\n> for several years. t9300 also fails intermittently. However, t9010 fails\n> every time for me, hanging the test suite (although ^C interrupts it just\n> fine).\n> \n> I have a \"fix\" for t9010 that looks like:\n> \n>     diff --git a/t/t9010-svn-fe.sh b/t/t9010-svn-fe.sh\n>     index b7eed24..4d01e3b 100755\n>     --- a/t/t9010-svn-fe.sh\n>     +++ b/t/t9010-svn-fe.sh\n>     @@ -22,10 +22,9 @@ try_dump () {\n>             maybe_fail_fi=${3:+test_$3} &&\n>     \n>             {\n>     -               $maybe_fail_svnfe test-svn-fe \"$input\" >stream 3<backflow &\n>     -       } &&\n>     -       $maybe_fail_fi git fast-import --cat-blob-fd=3 <stream 3>backflow &&\n>     -       wait $!\n>     +               $maybe_fail_svnfe test-svn-fe \"$input\" 3<backflow\n>     +       } |\n>     +       $maybe_fail_fi git fast-import --cat-blob-fd=3 3>backflow\n>      }\n>     \n>      properties () {\n> \n> but I have not tested this patch enough to be happy to submit it (I have\n> some suspicions that it would still fail intermittently, just like t9300).\n> \n> Also, commit 7bc0911d (\"test-lib: Fix say_color () not to interpret \\a\\b\\c\n> in the message\", 11-10-2012) caused several random test failures. (don't ask\n> me why). So, before each test run, I have to apply the following:\n> \n>     diff --git a/t/test-lib.sh b/t/test-lib.sh\n>     index f50f834..ed32b7f 100644\n>     --- a/t/test-lib.sh\n>     +++ b/t/test-lib.sh\n>     @@ -230,7 +230,7 @@ else\n>             say_color() {\n>                     test -z \"$1\" && test -n \"$quiet\" && return\n>                     shift\n>     -               printf \"%s\\n\" \"$*\"\n>     +               echo -E \"$*\"\n>             }\n>      fi\n> \n> which effectively reverts that commit.\n> \n> So, as I said, a \"magical mystery tour\". :-D\n> \n> ATB,\n> Ramsay Jones\n> \n> \nFirst of all,\nthe patch we are talking about does not any regrssions at my side.\n\nSecond,\nI was able to do some testing.\nThe hanging is not 100% reproducable, and I had one hanging in Git 1.8.1\n\nTurning the screen saver off in Win XP helps that the machine reacts,\nand using process explorer showed that the hanging is happening\nin test cases doing \"git fetch\" (or git pull) from a local repository.\nWhat I can see is one git-fetch.exe together with git-upload-pack.exe\n\nFrom my understanding is the upload-pack a \"forked\" exe from the main git,\nand they should talk to each other.\nOne interesting part is in run-command.c, and there we have different code for MiNGW\nand the \"rest of the world\", Linux/Unix/cygwin.\n\nI tried to steal the code around mingw_spawnvpe(), but could not get that working (yet).\n\nAnother approach could be to steal the pipe() from mingw.\n\nDoes anybody know if we have a similar problem (hanging TC which test fetch/pull)\nin MinGW/msysGit?\n\nIf no, why not ;-)\n\nThanks for reading\n/Torsten\n"},{"id":"217392","messageId":"8D0BDAB173A744B482A7DCC9DCB8AD26@PhilipOakley","threadId":"33718","inReplyTo":"5192927E.3030203@web.de","subject":"Re: Re: Problems with Windows, Was: What's cooking in git.git (May 2013, #01; Fri, 3)","fromName":"Philip Oakley","fromEmail":"philipoakley@iee.org","sentAt":"2013-05-14T22:41:49Z","receivedAt":"2013-05-14T22:41:49Z","isPatch":false,"sender":{"key":"philipoakley@iee.email","avatar":"https://avatars.githubusercontent.com/u/914343?v=4"},"body":"sorry about the MUA mangling - reply at end.\n----- Original Message ----- \nFrom: \"Torsten Bögershausen\" <tboegi@web.de>\nTo: \"Ramsay Jones\" <ramsay@ramsay1.demon.co.uk>\nCc: \"Torsten Bögershausen\" <tboegi@web.de>; \"Junio C Hamano\"\n<gitster@pobox.com>; <git@vger.kernel.org>; <mlevedahl@gmail.com>;\n\"Jonathan Nieder\" <jrnieder@gmail.com>; <j6t@kdbg.org>; \"msysGit\"\n<msysgit@googlegroups.com>\nSent: Tuesday, May 14, 2013 8:37 PM\nSubject: [msysGit] Re: Problems with Windows, Was: What's cooking in\ngit.git (May 2013, #01; Fri, 3)\n\n\nOn 2013-05-09 19.18, Ramsay Jones wrote:\n> Torsten Bögershausen wrote:\n>> On 2013-05-04 01.14, Junio C Hamano wrote:\n>>>\n>>>  Cygwin portability; both were reviewed by Jonathan, and the tip one\n>>>  seems to want a bit further explanation.  Needs positive report\n>>>  from Cygwin 1.7 users who have been on 1.7 to make sure it does not\n>>>  regress for them.\n>>\n>> I was trying to verify that cygwin 1.7 is still Ok, but got puzzled.\n>>\n>> Running the test suite under cygwin doesn't seem to work any more\n>> (?):\n>>\n>> Scenario 1:\n>> The PC is running alone, and goes into the screen saver.\n>> Pressing CTRL-ALT-DEL didn't get any effect.\n>>\n>> Scenario 2:\n>> The PC didn't react any more, when the test suite was run in\n>> background.\n>> In 3 or 4 cases the PC needed to be reboot hardly.\n>>\n>> Using the commits before and after this change makes the test suite\n>> hang\n>> as well at some point, then it hangs somewhere at TC 3000--4000.\n>>\n>> Scenario 4:\n>> The I disabled the screensaver, upgdated cygwin,\n>>  and went back to an older commit:\n>> The latest run from commit 52d63e70, April 28,\n>> hangs in TC 5500, ok 26 clone shallow object count.\n>>\n>> I can see 2 times\n>> git.exe pull --depth 4 ..A\n>>\n>> Scenario 5:\n>> The run of today 1.8.3-rc1, hangs in t5510,\n>> some git.exe are running fetch. (or pull)\n>>\n>>\n>> It seems as if some process/exes are not terminated\n>> in the way it should be.\n>>\n>> I will try on a different machine,\n>> comments are wellcome\n>\n> Hmm, I'm a little puzzled, but not shocked. ;-)\n>\n> Somebody, I forget who, had already tested Jonathan's patch\n> on cygwin 1.7 successfully and my follow up patch should be\n> a no-op on cygwin 1.7; so I'm puzzled! (The high risk should\n> have been on cygwin 1.5).\n>\n> I'm not shocked because running the test-suite on cygwin has\n> been a bit of a magical mystery tour for quite some time.\n>\n> In about 2007, I could not run the test-suite for about six\n> to nine months; it would randomly wedge my laptop solid - I had\n> to pull the power-cord out in order to re-boot. (I suspect that\n> commit 9cb18f56fde may have cured that particular problem, but\n> don't quote me on that - I didn't investigate at the time.)\n>\n> I have noticed that running the tests with 'prove' is more likely\n> to prove successful, so my config.mak looks like:\n>\n>     $ cat config.mak\n>     NO_SVN_TESTS=1\n>     GIT_TEST_OPTS=--no-color\n>     NO_GETTEXT=1\n>     DEFAULT_TEST_TARGET=prove\n>     GIT_PROVE_OPTS='--timer'\n>     $\n>\n> I currently run the tests like so:\n>\n>     $ time $(GIT_SKIP_TESTS='t0061.3 t0070.3 t4130 t9010 t9300' make\n> test \\\n>     >test-outp13 2>&1)\n>\n>     real    172m25.311s\n>     user    132m15.133s\n>     sys     66m43.122s\n>     $\n>\n> The t0061.3 and t0070.3 failures don't require much discussion. The\n> t4130\n> failure is an intermittent \"racy git\" issue that has been on my TODO\n> list\n> for several years. t9300 also fails intermittently. However, t9010\n> fails\n> every time for me, hanging the test suite (although ^C interrupts it\n> just\n> fine).\n>\n> I have a \"fix\" for t9010 that looks like:\n>\n>     diff --git a/t/t9010-svn-fe.sh b/t/t9010-svn-fe.sh\n>     index b7eed24..4d01e3b 100755\n>     --- a/t/t9010-svn-fe.sh\n>     +++ b/t/t9010-svn-fe.sh\n>     @@ -22,10 +22,9 @@ try_dump () {\n>             maybe_fail_fi=${3:+test_$3} &&\n>\n>             {\n>     -               $maybe_fail_svnfe test-svn-fe \"$input\" >stream\n> 3<backflow &\n>     -       } &&\n>     -       $maybe_fail_fi git fast-import --cat-blob-fd=3 <stream\n> 3>backflow &&\n>     -       wait $!\n>     +               $maybe_fail_svnfe test-svn-fe \"$input\" 3<backflow\n>     +       } |\n>     +       $maybe_fail_fi git fast-import --cat-blob-fd=3 3>backflow\n>      }\n>\n>      properties () {\n>\n> but I have not tested this patch enough to be happy to submit it (I\n> have\n> some suspicions that it would still fail intermittently, just like\n> t9300).\n>\n> Also, commit 7bc0911d (\"test-lib: Fix say_color () not to interpret\n> \\a\\b\\c\n> in the message\", 11-10-2012) caused several random test failures.\n> (don't ask\n> me why). So, before each test run, I have to apply the following:\n>\n>     diff --git a/t/test-lib.sh b/t/test-lib.sh\n>     index f50f834..ed32b7f 100644\n>     --- a/t/test-lib.sh\n>     +++ b/t/test-lib.sh\n>     @@ -230,7 +230,7 @@ else\n>             say_color() {\n>                     test -z \"$1\" && test -n \"$quiet\" && return\n>                     shift\n>     -               printf \"%s\\n\" \"$*\"\n>     +               echo -E \"$*\"\n>             }\n>      fi\n>\n> which effectively reverts that commit.\n>\n> So, as I said, a \"magical mystery tour\". :-D\n>\n> ATB,\n> Ramsay Jones\n>\n>\nFirst of all,\nthe patch we are talking about does not any regrssions at my side.\n\nSecond,\nI was able to do some testing.\nThe hanging is not 100% reproducable, and I had one hanging in Git 1.8.1\n\nTurning the screen saver off in Win XP helps that the machine reacts,\nand using process explorer showed that the hanging is happening\nin test cases doing \"git fetch\" (or git pull) from a local repository.\nWhat I can see is one git-fetch.exe together with git-upload-pack.exe\n\n>From my understanding is the upload-pack a \"forked\" exe from the main\ngit,\nand they should talk to each other.\nOne interesting part is in run-command.c, and there we have different\ncode for MiNGW\nand the \"rest of the world\", Linux/Unix/cygwin.\n\nI tried to steal the code around mingw_spawnvpe(), but could not get\nthat working (yet).\n\nAnother approach could be to steal the pipe() from mingw.\n\nDoes anybody know if we have a similar problem (hanging TC which test\nfetch/pull)\nin MinGW/msysGit?\n\nIf no, why not ;-)\n\nThanks for reading\n/Torsten\n\n---\nTorsten,\n\nThere have been on-going sporadic problems with the push / fetch over\nvarious protocols which haven't been tracked down to an exact point that\naffords a proper fix. The reports appear to cover both ssh and git \nprotocols. In some cases it could be the users ssh client.\n\nThe skill sets and developer approaches to problem resolution in\nWindowsland and *nixland do appear to be somewhat different ;-)\n\nI posted a reply to an earlier report on\nhttps://groups.google.com/group/msysgit/msg/fdabaa0e4f8a55a7?hl=en\nFrom: \"Philip Oakley\" <philipoak...@iee.org>\nDate: Fri, 8 Feb 2013 19:31:33 -0000\nLocal: Fri, Feb 8 2013 8:31 pm\nSubject: Re: [msysGit] Unable to clone/fetch\n\n[...]\n\nThis is my list of web pages on the issue that may be of help. Issue 457\nhas a good discussion. It looks to me as if this is a case of 'premature\noptimisation' in Linux land (or the the opposite by microsoft) in the\nway that the side band channels are set-up and info is exchanged. But I\nhaven't go any further than reading through the various reports,\nthinking, and surmising (no practical work ;-).\n\n\nIf you are able to find a method to unwind the situation that causes the\ndeadlock it would be great for every one.\nregards\nPhilip\n\n\nGoogle :: \"msysgit hangs when ssh fetch\"\n========================================\nhttp://billauer.co.il/blog/2012/10/git-pull-windows-freeze-receive-pack/\n Change \"side-band-64k\" to \"side-bond-64k\" so it never gets used.\n\n\nhttp://devnet.jetbrains.net/message/5473415?tstart=0\n remnants of several previous installations of Git. Sort the path\nentries..\n\n\nhttp://code.google.com/p/msysgit/issues/detail?id=74\n Issue 74: git remote update/git fetch fails via ssh\n\n\nhttp://code.google.com/p/msysgit/issues/detail?id=161\n Issue 161: git-gui hangs on ssh for users with home directory mapped to\nserver share\n\n\nhttp://code.google.com/p/msysgit/issues/detail?id=243\nhttps://groups.google.com/forum/?fromgroups=#!topic/msysgit/mFnzYM3IA_4\n Re: Issue 243 in msysgit: ssh hangs a minute than goes to next line\nwithout performing action\n\n\nhttp://code.google.com/p/msysgit/issues/detail?id=361\n Issue 361: Clone/fetch/pull from github using git protocol hangs, http\nworks\n\n\nhttp://code.google.com/p/msysgit/issues/detail?id=457\n*** a good discussion.\n Issue 457: Push over git protocol hangs in msysGit\n The problematic commit is 0c499ea60f, which introduced the sideband\nsupport in send_pack.\n\n\n\n-- \n-- \n*** Please reply-to-all at all times ***\n*** (do not pretend to know who is subscribed and who is not) ***\n*** Please avoid top-posting. ***\nThe msysGit Wiki is here: https://github.com/msysgit/msysgit/wiki - Github accounts are free.\n\nYou received this message because you are subscribed to the Google\nGroups \"msysGit\" group.\nTo post to this group, send email to msysgit@googlegroups.com\nTo unsubscribe from this group, send email to\nmsysgit+unsubscribe@googlegroups.com\nFor more options, and view previous threads, visit this group at\nhttp://groups.google.com/group/msysgit?hl=en_US?hl=en\n\n--- \nYou received this message because you are subscribed to the Google Groups \"msysGit\" group.\nTo unsubscribe from this group and stop receiving emails from it, send an email to msysgit+unsubscribe@googlegroups.com.\nFor more options, visit https://groups.google.com/groups/opt_out.\n"},{"id":"217409","messageId":"CALUzUxono74WCnyFh-JWA0pA_Ax2OD_95VE-wFFdtuLsw05www@mail.gmail.com","threadId":"33718","inReplyTo":"5192927E.3030203@web.de","subject":"Re: Problems with Windows, Was: What's cooking in git.git (May 2013, #01; Fri, 3)","fromName":"Tay Ray Chuan","fromEmail":"rctay89@gmail.com","sentAt":"2013-05-15T06:19:15Z","receivedAt":"2013-05-15T06:19:15Z","isPatch":false,"sender":{"key":"rctay89@gmail.com","avatar":"https://avatars.githubusercontent.com/u/61553?v=4"},"body":"On Wed, May 15, 2013 at 3:37 AM, Torsten Bögershausen <tboegi@web.de> wrote:\n> Second,\n> I was able to do some testing.\n> The hanging is not 100% reproducable, and I had one hanging in Git 1.8.1\n>\n> Turning the screen saver off in Win XP helps that the machine reacts,\n> and using process explorer showed that the hanging is happening\n> in test cases doing \"git fetch\" (or git pull) from a local repository.\n> What I can see is one git-fetch.exe together with git-upload-pack.exe\n\nI also managed to run into the intermittent hanging of git-fetch when\nrunning t5510. What I do is keep running the test till it stalls:\n\n  while [ $? -eq 0 ]; do date; ./t5510-fetch.sh -i -v; done\n\nAlmost always the git-fetch output looks like this:\n\n  remote: Counting objects: 7, done.\n  remote: Compressing objects: 100% (5/5), done.\n  remote: Total 6 (delta 1), reused 0 (delta 0)\n\nHowever my task manager indicates that git-upload-pack or whatever\nthat runs on the remote side is absent, only git-fetch is waiting - 0\nI/O, 0 cswitches, nilda. I tried getting a gdb backtrace but I get ???\nnonsense, despite having compiled git with `-g -O0`. I also noticed\nthere were a couple of threads. This is my gdb session:\n\n$ gdb --pid=7936\nGNU gdb (GDB) 7.6.50.20130508-cvs (cygwin-special)\n...\nAttaching to process 7936\n[New Thread 7936.0x1c7c]\n[New Thread 7936.0x6b8]\n[New Thread 7936.0xd20]\n[New Thread 7936.0x1cf8]\n[New Thread 7936.0x1b24]\nReading symbols from /cygdrive/f/files/coding/git/git.exe...done.\n(gdb) info thread\n  Id   Target Id         Frame\n* 5    Thread 7936.0x1b24 0x77c5000d in ntdll!DbgBreakPoint ()\n   from /cygdrive/c/Windows/SysWOW64/ntdll.dll\n  4    Thread 7936.0x1cf8 0x77c5f8b1 in ntdll!ZwWaitForSingleObject ()\n   from /cygdrive/c/Windows/SysWOW64/ntdll.dll\n  3    Thread 7936.0xd20 0x77c5f91d in ntdll!ZwWriteFile ()\n   from /cygdrive/c/Windows/SysWOW64/ntdll.dll\n  2    Thread 7936.0x6b8 0x77c5f8b1 in ntdll!ZwWaitForSingleObject ()\n   from /cygdrive/c/Windows/SysWOW64/ntdll.dll\n  1    Thread 7936.0x1c7c 0x77c5f8b1 in ntdll!ZwWaitForSingleObject ()\n   from /cygdrive/c/Windows/SysWOW64/ntdll.dll\n(gdb) bt\n#0  0x77c5000d in ntdll!DbgBreakPoint () from\n/cygdrive/c/Windows/SysWOW64/ntdll.dll\n#1  0x77cdf896 in ntdll!DbgUiRemoteBreakin () from\n/cygdrive/c/Windows/SysWOW64/ntdll.dll\n#2  0x775c5cca in ?? ()\n#3  0x00000000 in ?? ()\n(gdb) thread 4\n[Switching to thread 4 (Thread 7936.0x1cf8)]\n#0  0x77c5f8b1 in ntdll!ZwWaitForSingleObject () from\n/cygdrive/c/Windows/SysWOW64/ntdll.dll\n(gdb) bt\n#0  0x77c5f8b1 in ntdll!ZwWaitForSingleObject () from\n/cygdrive/c/Windows/SysWOW64/ntdll.dll\n#1  0x77c5f8b1 in ntdll!ZwWaitForSingleObject () from\n/cygdrive/c/Windows/SysWOW64/ntdll.dll\n#2  0x7573149d in WaitForSingleObjectEx () from\n/cygdrive/c/Windows/syswow64/KERNELBASE.dll\n#3  0x00000148 in ?? ()\n#4  0x00000000 in ?? ()\n(gdb) thread 3\n[Switching to thread 3 (Thread 7936.0xd20)]\n#0  0x77c5f91d in ntdll!ZwWriteFile () from\n/cygdrive/c/Windows/SysWOW64/ntdll.dll\n(gdb) bt\n#0  0x77c5f91d in ntdll!ZwWriteFile () from\n/cygdrive/c/Windows/SysWOW64/ntdll.dll\n#1  0x77c5f91d in ntdll!ZwWriteFile () from\n/cygdrive/c/Windows/SysWOW64/ntdll.dll\n#2  0x7572dec1 in WriteFile () from /cygdrive/c/Windows/syswow64/KERNELBASE.dll\n#3  0x0000009c in ?? ()\n#4  0x00000000 in ?? ()\n(gdb) thread 2\n[Switching to thread 2 (Thread 7936.0x6b8)]\n#0  0x77c5f8b1 in ntdll!ZwWaitForSingleObject () from\n/cygdrive/c/Windows/SysWOW64/ntdll.dll\n(gdb) bt\n#0  0x77c5f8b1 in ntdll!ZwWaitForSingleObject () from\n/cygdrive/c/Windows/SysWOW64/ntdll.dll\n#1  0x77c5f8b1 in ntdll!ZwWaitForSingleObject () from\n/cygdrive/c/Windows/SysWOW64/ntdll.dll\n#2  0x7573149d in WaitForSingleObjectEx () from\n/cygdrive/c/Windows/syswow64/KERNELBASE.dll\n#3  0x0000001c in ?? ()\n#4  0x00000000 in ?? ()\n(gdb) thread 1\n[Switching to thread 1 (Thread 7936.0x1c7c)]\n#0  0x77c5f8b1 in ntdll!ZwWaitForSingleObject () from\n/cygdrive/c/Windows/SysWOW64/ntdll.dll\n(gdb) bt\n#0  0x77c5f8b1 in ntdll!ZwWaitForSingleObject () from\n/cygdrive/c/Windows/SysWOW64/ntdll.dll\n#1  0x77c5f8b1 in ntdll!ZwWaitForSingleObject () from\n/cygdrive/c/Windows/SysWOW64/ntdll.dll\n#2  0x7573149d in WaitForSingleObjectEx () from\n/cygdrive/c/Windows/syswow64/KERNELBASE.dll\n#3  0x00000034 in ?? ()\n#4  0x00000000 in ?? ()\n\n--\nCheers,\nRay Chuan\n\n-- \n-- \n*** Please reply-to-all at all times ***\n*** (do not pretend to know who is subscribed and who is not) ***\n*** Please avoid top-posting. ***\nThe msysGit Wiki is here: https://github.com/msysgit/msysgit/wiki - Github accounts are free.\n\nYou received this message because you are subscribed to the Google\nGroups \"msysGit\" group.\nTo post to this group, send email to msysgit@googlegroups.com\nTo unsubscribe from this group, send email to\nmsysgit+unsubscribe@googlegroups.com\nFor more options, and view previous threads, visit this group at\nhttp://groups.google.com/group/msysgit?hl=en_US?hl=en\n\n--- \nYou received this message because you are subscribed to the Google Groups \"msysGit\" group.\nTo unsubscribe from this group and stop receiving emails from it, send an email to msysgit+unsubscribe@googlegroups.com.\nFor more options, visit https://groups.google.com/groups/opt_out.\n"}]}