I'm forwarding this to subversion dev as well. See the end of this
email for what *appears* to be a bug in Subversion 1.5.
On Fri, Jun 27, 2008 at 1:48 PM, J J <eggsgloriouseggs_at_gmail.com> wrote:
>>>>>>>>>
>>>>>>>>> My repository has a pre-revprop-change hook in place that prevents
>>>>>>>>> all
>>>>>>>>> modifications to revision properties. It works fine (i.e. prevents
>>>>>>>>> the action and displays the error message) when I try to edit or add
>>>>>>>>> revision properties via TortoiseSVN. However when I try to remove a
>>>>>>>>> property it asks me for a commit message (which should be required)
>>>>>>>>> and then just refreshes the Properties window without any change.
>>>>>>>>> No
>>>>>>>>> error message is displayed.
>>>>>>>>>
>>>>>>>>> Is this a known issue?
>>>>>>>>
>>>>>>>> I can't reproduce this here. If I set the pre-revprop-change hook
>>>>>>>> script
>>>>>>>> to
>>>>>>>> return -1 (indicating an error), I get a nice messagebox showing me
>>>>>>>> that
>>>>>>>> the
>>>>>>>> removal of the revision property failed and the error message piped
>>>>>>>> to
>>>>>>>> stderr by the script.
>>>>>>>>
>>>>>>>> Do you have more information about your setup/script/versions? And I
>>>>>>>> assume
>>>>>>>> you used the log dialog, right-click, "Show revision properties" for
>>>>>>>> this?
>>>>>>>
>>>>>>> I get two different behaviors depending on how I do it.
>>>>>>>
>>>>>>> 1) Right click > Show Log. Right click on revision > Show revision
>>>>>>> properties. Highlight property and click Remove. "Enter Log Message"
>>>>>>> dialog appears. Click OK. Then a dialog titled "Microsoft Visual C++
>>>>>>> Runtime Library" appears with the following text.
>>>>>>>
>>>>>>> Runtime Error!
>>>>>>>
>>>>>>> Program C:\Program Files\TortoiseSVN\bin\TortoiseProc.exe
>>>>>>>
>>>>>>> This application has requested the Runtime to terminate it in an
>>>>>>> unusual
>>>>>>> way.
>>>>>>> Please contact the application's support team for more information.
>>>>>>>
>>>>>>> Everything is unresponsive after this, and eventually a
>>>>>>> "TortoiseProc.exe" dialog appears saying "TortoiseProc.exe has
>>>>>>> encountered a problem and needs to close. We are sorry for the
>>>>>>> inconvenience." I can click Debug or Close.
>>>>>>>
>>>>>>> 2) Within Repository Browser right click on a folder and select Show
>>>>>>> revision properties. Highlight property. Click Remove. "Enter Log
>>>>>>> Message" appears. Click OK. "Setting properties" progress dialog
>>>>>>> appears briefly. Then Properties window refreshes with all properties
>>>>>>> still present and no error.
>>>>>>
>>>>>> Ahem: there is no menu "Show revision properties" in the repository
>>>>>> browser,
>>>>>> only "Show properties". And those are the normal properties, not
>>>>>> revision
>>>>>> properties. So your hook script can't interfere with changes there.
>>>>>
>>>>> Well I don't know what is going on then, because I definitely have a
>>>>> Show revision properties window there. See the attached image.
>>>>
>>>> Ups, sorry. I completely forgot that the menu is shown for the repository
>>>> root.
>>>>
>>>> But I still get the error message dialog here. I've also treid your
>>>> script,
>>>> but used 'exit -1', still I get the error dialog.
>>>>
>>>> Even if I return 1 instead of -1 I get the error dialog.
>>>>
>>>> Are you sure your hook script is even run on the server?
>>>
>>> Yes I'm sure it's running because it works for both edit and add, just
>>> not for delete. Since we're seeing different behavior, I'm going to
>>> uninstall and reinstall TortoiseSVN one more time and see if that
>>> changes anything.
>>
>> That won't help you much.
>> But you could try the svn command line client (either from open.collab.net,
>> or from http://nightlybuilds.tortoisesvn.net/latest/win32/). If you use the
>> one from our nightly build server, you have to copy it into the TSVN
>> installation path for it to work.
>>
>> Then use
>> svn propdel propertyname url --revprop -r XXX
>>
>
> Uninstall and reinstall didn't help, as you said.
>
> Running propdel from the commandline appeared to succeed, but actually didn't.
>
> C:\temp>svn --version
> svn, version 1.5.0 (r31699)
> compiled Jun 23 2008, 12:59:48
>
> Copyright (C) 2000-2008 CollabNet.
> Subversion is open source software, see http://subversion.tigris.org/
> This product includes software developed by CollabNet (http://www.Collab.Net/).
>
> The following repository access (RA) modules are available:
>
> * ra_neon : Module for accessing a repository via WebDAV protocol using Neon.
> - handles 'http' scheme
> - handles 'https' scheme
> * ra_svn : Module for accessing a repository using the svn network protocol.
> - with Cyrus SASL authentication
> - handles 'svn' scheme
> * ra_local : Module for accessing a repository on local disk.
> - handles 'file' scheme
>
> C:\temp>svn propdel svn:log REPO_URL --revprop -r HEAD
> property 'svn:log' deleted from repository revision 2796
>
> C:\temp>svn pl -v --revprop -r HEAD REPO_URL
> Unversioned properties on revision 2796:
> svn:log :
> svn:author : USER
> svn:date : 2008-06-27T16:27:56.154502Z
>
> ## Propset below just to prove the hook is working.
>
> C:\temp>svn propset testprop testval REPO_URL --revprop -r HEAD
> svn: DAV request failed; it's possible that the repository's pre-revprop-change
> hook either failed or is non-existent
> svn: At least one property change failed; repository is unchanged
> svn: Error setting property 'testprop':
> Revprop change blocked by pre-revprop-change hook (exit code 1) with output:
> Changing revision properties is prohibited by company policy
>
> I also tried temporarily disabling the hook so I could set property
> called testprop. Then I reanbled the hook to see if I could remove
> it, to make sure there wasn't some special behavor for svn:*
> properties. I got the same results.
>
> C:\temp>svn propdel testprop REPO_URL --revprop -r HEAD
> property 'testprop' deleted from repository revision 2796
>
> C:\temp>svn pl -v --revprop -r HEAD REPO_URL
> Unversioned properties on revision 2796:
> testprop : testval
> svn:log :
> svn:author : USER
> svn:date : 2008-06-27T16:27:56.154502Z
>
> Is this a bug with Subversion itself? I'm cross-posting to the
> Subversion users list now.
>
> Justin
>
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe_at_subversion.tigris.org
For additional commands, e-mail: dev-help_at_subversion.tigris.org
Received on 2008-06-27 21:04:00 CEST