[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Monotone-devel] Re: exec attr on Cygwin
From: |
Stephen Leake |
Subject: |
[Monotone-devel] Re: exec attr on Cygwin |
Date: |
Thu, 28 Oct 2010 05:08:46 -0400 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/23.1 (windows-nt) |
Lapo Luchini <address@hidden> writes:
> Stephen Leake wrote:
>>> Hrm... I'm by no means a Windows expert, but does plain Win32 (not
>>> Cygwin) even have the concept of an executable bit...? This might be the
>>> reason why its not set on mingw.
>>
>> Neither file is actually executable; the fact that Cygwin sets it is a
>> separate bug.
>>
>> On Windows, "executable" is determined by the file extension
>
> OTOH Cygwin *has* the executable bit, and it is mapped on the "can be
> executed" standard Windows ACL, which more or less all files gets by
> default.
>
> So, if you create a text file with notepad.exe, Cygwin see it as
> executable.
Which is certainly not what people expect. But that is not mtn or
Cygwin's fault. Once again, we get rail futilely at Microsoft!
There is one more wrinkle; when mtn checks out a plain text file, Cygwin
sees it as executable. We might be able to fix that, with some ACL magic?
>> However, that doesn't address the issue of whether setting an attribute
>> on a rev should change the revid. Since we can set attributes after the
>> rev has been committed, attrs should not affect the revid; this has to
>> be a recent bug in mtn. I'll do a bisect to see when this test broke.
>
> ???
>
> Of course it changes the revid, as it is in the manifest.
> Always been that way as far as I remember...
I was confusing attrs with certs, and had never seen an actual manifest
with an attr before.
Anyway, I've pushed a fix for issue 97; the tests now pass.
The general issue of the executable attr is more complicated; that's
what issue 99 is for. On my project, I want all *.sh files to be
executable on all platforms, and no other files (I don't store binary
executables in mtn).
--
-- Stephe