Comments (20)
I suspect this problem may have been introduced in magit by commit 2acc8be, which changes the value of 'process-connection-type' in 'magit-run*' for non-cygwin systems.
I can confirm this behaviour under Emacs trunk (though have not tested with 23.x). Setting 'magit-process-connection-type' to nil resolves this for me.
from magit.
- Under FreeBSD-8.0 the "set process-connection-type to nil" workaround doesn't work for me.
- I bisected the problem to the following (first bad) Emacs commit: http://repo.or.cz/w/emacs.git/commitdiff/ee1b6e21aa2b831499659b7f58ec94b95016cec7
ee1b6e21aa2b831499659b7f58ec94b95016cec7 is the first bad commit
commit ee1b6e21aa2b831499659b7f58ec94b95016cec7
Author: Stefan Monnier [email protected]
Date: Mon May 31 21:49:15 2010 -0400
* sysdep.c (child_setup_tty): Move the non-canonical initialization to
the HAVE_TERMIO where it belongs.
Again (because the problem seems system-dependent), I'm using FreeBSD-8.0 on amd64 platform.
from magit.
Did you report the results of your bisect to the emacs-devel
list? M-x report-emacs-bug.
from magit.
No. Before doing this need to understand, which side is wrong -- emacs obtained not so good commit, or commit is absolutelly right and just exposed magit's flaw.
from magit.
In either case I'm sure the Emacs devs will be interested to know that it broke things.
from magit.
I just experienced this on Ubuntu after I updated my snapshot of emacs to the HEAD. :(
from magit.
I'm having this same problem on Snow Leopard using homebrew. No problems with AquaMacs.
from magit.
Reverting emacs commit ee1b6e2 to sysdep.c is not an viable option. I expirienced Tramp hangs if it reverted at the "checking vc-registered" (or something like that, cited from memory) stage. Seems like the problem lives at the Magit side indeed (using obsolete or changed interface, for example).
from magit.
As of a few days ago, the situation has worsened in emacs HEAD: setting magit-process-connection-type to nil is no longer a viable workaround, since the hanging behaviour now happens regardless. I suspect a subtle misbehaviour on Magit's side (it uses a bunch of features like process filters, sentinels, IO and exit status polling), though I haven't been able to pin down what's going wrong.
from magit.
Emacs developers are aware about the problem.
See thread started at:
http://lists.gnu.org/archive/html/emacs-devel/2010-06/msg00217.html
from magit.
Yay, then I'm delighted to be wrong in this case!
from magit.
The Emacs dev discussion related to Ctrl-D not working in term-mode, which now appears to be fixed. Magit, however, is still not working using either possible value of magit-process-connection-type. Very mysterious.
from magit.
I just did a fresh build of emacs from bzr on a 64bit linux. I also still have the same issue with magit 0.8.1 and git 1.7.1.1, regardless of magit-process-connection-type's value.
from magit.
It's still happening, but I'm certain the problem lies with Emacs. Using the following snippet in Emacs 23, the result is "Process cat finished":
(let ((p (start-process "cat" (current-buffer) "cat")))
(process-send-eof p)
(sit-for 1)
(process-status p))
but in Emacs from HEAD, the output is "^D", and the process-status call returns 'run. I guess I'll try to file an Emacs bug report for this.
from magit.
I've filed an Emacs bug: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=6771
from magit.
http://bazaar.launchpad.net/%7Evcs-imports/emacs/trunk/revision/100961 fixed the problem for me.
from magit.
Yep, I can confirm this is now fixed in Emacs, so I'd consider this magit issue resolved now.
from magit.
Is this kept open for a reason or do we all just lack the privileges to close this? ;)
from magit.
Option 2.
Phil should feel free to close this now.
from magit.
Apparently, our older bug should have been closed one year ago... closing it now.
from magit.
Related Issues (20)
- Magit displays warning about transient version, even though I'm using the latest. HOT 5
- magit-log-mode-hook Does Not Work
- Magit commit fails with `safe.barerepository=explicit`. HOT 13
- Hunk refinement does not work for unmerged files HOT 1
- magit-blame shows CommitDate instead of AuthorDate
- Stage hunk in tramp session result in infinity loop HOT 2
- When doing worktree diff with a commit, apply/reverse doesn't work in the diff buffer HOT 3
- Setting `safe.bareRepository=explicit` breaks magit commit HOT 1
- magit-diff-paths output is not washed HOT 1
- Error in `magit-repolist-column-version` function: (wrong-type-argument integer-or-marker-p nil) HOT 1
- `magit-log` with `--author=` argument hangs with `vertico-mode` when `transient-default-level` is 7 HOT 2
- Magit should always specify --git-dir or GIT_DIR when cd-ing to a gitdir to run some Git subcommand. HOT 19
- Binding C-<tab> conflicts with Emacs' tab-bar-mode HOT 1
- Non-existing tramp function advised in magit-process.el HOT 1
- Confirm commit message when running emacs as client HOT 5
- Trying to visit files in `magit-diff-paths` output leads to wrong path
- large git merges make magit-process buffer grow quickly
- `Filter! diff.ignoreSubmodules=untracked` on top of magit buffer is confusing
- Unable to recursively init submodules HOT 1
- submodule update with universal argument still prompts for submodule selection when there is only one submodule HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from magit.