Thread (31 messages) flat view 31 messages, 7 authors, 2016-06-15

Re: [PATCH] fmt-merge-msg: avoid open "-|" list form for Perl 5.6

From: Alex Riesen <hidden>
Date: 2016-06-15 22:42:20

Christopher, I'm terribly sorry for the long delays,
but that is something I can't change at this moment.

On 2/26/06, Christopher Faylor [off-list ref] wrote:
quoted
quoted
quoted
It's not activestate perl actually.  It's only one platform it also
_has_ to support.  Is it worth supporting Windows?
With or without cygwin?  With cygwin, I'd say "yes, unless it makes
things terribly difficult to maintain and so long as we don't take
performance hits on unices".  Without cygwin, I'd say "What?  It runs
on windows?".
There not much difference with or without cygwin.  The penalties of
doing any kind of support for it will pile up (as they started to do
with pipes).  Someday we'll have to start dropping features on Windows
or restrict them beyond their usefullness.  The fork emulation in
cygwin isn't perfect,
If the speed of cygwin's fork is an issue then I'd previously suggested
using spawn*.  The spawn family of functions were designed to emulate
Windows functions of the same name.  They start a new process without
the requirement of forking.
The effort of porting git to spawn-like interface has already started,
so there's no much left to say about the fork's speed...
quoted
signals do not work reliably (if at all),
I'm not sure if you're mixing cygwin with windows here but if signals do
not work reliably in Cygwin then that is something that we'd like to
know about.  Signals *obviously* have to work fairly well for programs
like ssh, bash, and X to work, however.
That's not enough.
Try interrupting busy processes. Like "git pull", "git clone" or make.
Native Windows, OTOH, hardly has any signals at all and deals with
signals in a way that is only vaguely like linux.
That makes the rest of installed system kind of useless in cygwin
environment. After interrupting a build process, which uses java
(don't ask) only make stops. The rest of the process runs happily
away.

Now, I know that windows has no signals at all and nothing which
even closely resembles them. I wont be pressing anyone to
implement them in windows, having the knowledge.
What I'd actually suggest is to drop their implementation entierly,
returning ENOSYS, so that programs are not fooled into believing
that the system will work as expected. It never will.
"Ctrl-C" in windows console is just a shortcut to TerminateProcess,
live with that.
quoted
filesystem is slow and locked down, and exec-attribute is NOT really
useful even on NTFS (it is somehow related to execute permission and
open files.  I still cannot figure out how exactly are they related).
Again, it's not clear if you're talking about Windows or Cygwin but
under Cygwin, in the default configuration, the exec attribute means the
same thing to cygwin as it does to linux.
I'm talking about git and native windows interaction: I cannot use umask,
because I have to use stupid windows programs, and they always create
"executable" *.c and *.h, and I cannot blindly remove it with something
like "chmod -R -x", because it'd remove it also from executables. The
poor executables lose their _rights_ to be executed (why does cygwin use
windows permissions? They cannot correlate to unix attributes, can they?)
An .bat or .cmd without right to execute it is a pain in my build system
(and no, I'm not allowed to change that damn stupid build system).

Is there any way to tell cygwin that the files it hasn't seen or touched yet
are _not_executables_?
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help