|
View:
New views
8 Messages
—
Rating Filter:
Alert me
|
|
|
svn entry propertyDear SVNKit,
using the original svn client performing an svn propedit svn:entry:schedule . yields to a svn: Property 'svn:entry:schedule' is an entry property exception. Shouldn't we extend jsvn wrt. refusing such actions? If yes, I would like to volunteer. Cheers, /nm --------------------------------------------------------------------- To unsubscribe, e-mail: svnkit-users-unsubscribe@... For additional commands, e-mail: svnkit-users-help@... |
|
|
Re: svn entry propertyNormen Müller wrote:
> Dear SVNKit, > > using the original svn client performing an > > svn propedit svn:entry:schedule . > > yields to a > > svn: Property 'svn:entry:schedule' is an entry property > > exception. Shouldn't we extend jsvn wrt. refusing such actions? > > If yes, I would like to volunteer. > > Cheers, > /nm $ svn propedit svn:wc:ra_dav:version-url . svn: 'svn:wc:ra_dav:version-url' is a wcprop, thus not accessible to clients --------------------------------------------------------------------- To unsubscribe, e-mail: svnkit-users-unsubscribe@... For additional commands, e-mail: svnkit-users-help@... |
|
|
Re: svn entry propertyNormen Müller wrote:
> Normen Müller wrote: >> Dear SVNKit, >> >> using the original svn client performing an >> >> svn propedit svn:entry:schedule . >> >> yields to a >> >> svn: Property 'svn:entry:schedule' is an entry property >> >> exception. Shouldn't we extend jsvn wrt. refusing such actions? >> >> If yes, I would like to volunteer. >> >> Cheers, >> /nm > same holds for > > $ svn propedit svn:wc:ra_dav:version-url . > svn: 'svn:wc:ra_dav:version-url' is a wcprop, thus not accessible to > clients For svn:entry I suppose the attached patch. Cheers, /nm Index: /home/nmueller/svnkit/trunk/svnkit/src/org/tmatesoft/svn/core/wc/SVNWCClient.java =================================================================== --- /home/nmueller/vc/svn/kwarc.info/locutor/src/svnkit/trunk/svnkit/src/org/tmatesoft/svn/core/wc/SVNWCClient.java (revision 1430) +++ /home/nmueller/vc/svn/kwarc.info/locutor/src/svnkit/trunk/svnkit/src/org/tmatesoft/svn/core/wc/SVNWCClient.java (working copy) @@ -147,6 +147,7 @@ * </table> * * @author TMate Software Ltd. + * @author Normen Müller <n.mueller@...> * @version 1.1.1 * @see <a target="_top" href="http://svnkit.com/kb/examples/">Examples</a> */ @@ -731,6 +732,12 @@ SVNErrorMessage err = SVNErrorMessage.create(SVNErrorCode.CLIENT_PROPERTY_NAME, "''{0}'' is a wcprop , thus not accessible to clients", propName); SVNErrorManager.error(err); } + // nmueller: start + if (propName != null && propName.startsWith(SVNProperty.SVN_ENTRY_PREFIX)) { + SVNErrorMessage err = SVNErrorMessage.create(SVNErrorCode.CLIENT_PROPERTY_NAME, "Property ''{0}'' is an entry property", propName); + SVNErrorManager.error(err); + } + // nmueller: end SVNRepository repos = createRepository(url, null, null, SVNRevision.UNDEFINED, revision, null); long revNumber = getRevisionNumber(revision, repos, null); repos.setRevisionPropertyValue(revNumber, propName, propValue); @@ -875,6 +882,13 @@ "''{0}'' is a wcprop , thus not accessible to clients", propName); SVNErrorManager.error(err); } + // nmueller: start + if (propName != null && propName.startsWith(SVNProperty.SVN_ENTRY_PREFIX)) { + SVNErrorMessage err = SVNErrorMessage.create(SVNErrorCode.CLIENT_PROPERTY_NAME, + "Property ''{0}'' is an entry property", propName); + SVNErrorManager.error(err); + } + // nmueller: end if (depth == null || depth == SVNDepth.UNKNOWN) { depth = SVNDepth.EMPTY; @@ -932,6 +946,13 @@ "''{0}'' is a wcprop , thus not accessible to clients", propName); SVNErrorManager.error(err); } + // nmueller: start + if (propName != null && propName.startsWith(SVNProperty.SVN_ENTRY_PREFIX)) { + SVNErrorMessage err = SVNErrorMessage.create(SVNErrorCode.CLIENT_PROPERTY_NAME, + "Property ''{0}'' is an entry property", propName); + SVNErrorManager.error(err); + } + // nmueller: end if ((revision != SVNRevision.WORKING && revision != SVNRevision.BASE && revision != SVNRevision.COMMITTED && revision != SVNRevision.UNDEFINED) || (pegRevision != SVNRevision.WORKING && @@ -986,6 +1007,12 @@ SVNErrorMessage err = SVNErrorMessage.create(SVNErrorCode.CLIENT_PROPERTY_NAME, "''{0}'' is a wcprop , thus not accessible to clients", propName); SVNErrorManager.error(err); } + // nmueller: start + if (propName != null && propName.startsWith(SVNProperty.SVN_ENTRY_PREFIX)) { + SVNErrorMessage err = SVNErrorMessage.create(SVNErrorCode.CLIENT_PROPERTY_NAME, "Property ''{0}'' is an entry property", propName); + SVNErrorManager.error(err); + } + // nmueller: end long[] pegRev = new long[]{-1}; SVNRepository repos = createRepository(url, null, null, pegRevision, revision, pegRev); revision = pegRev[0] < 0 ? revision : SVNRevision.create(pegRev[0]); @@ -1021,6 +1048,12 @@ SVNErrorMessage err = SVNErrorMessage.create(SVNErrorCode.CLIENT_PROPERTY_NAME, "''{0}'' is a wcprop , thus not accessible to clients", propName); SVNErrorManager.error(err); } + // nmueller: start + if (propName != null && propName.startsWith(SVNProperty.SVN_ENTRY_PREFIX)) { + SVNErrorMessage err = SVNErrorMessage.create(SVNErrorCode.CLIENT_PROPERTY_NAME, "Property ''{0}'' is an entry property", propName); + SVNErrorManager.error(err); + } + // nmueller: end if (!revision.isValid()) { SVNErrorMessage err = SVNErrorMessage.create(SVNErrorCode.CLIENT_BAD_REVISION, "Valid revision have to be specified to fetch revision property"); SVNErrorManager.error(err); @@ -1058,6 +1091,12 @@ SVNErrorMessage err = SVNErrorMessage.create(SVNErrorCode.CLIENT_PROPERTY_NAME, "''{0}'' is a wcprop , thus not accessible to clients", propName); SVNErrorManager.error(err); } + // nmueller: start + if (propName != null && propName.startsWith(SVNProperty.SVN_ENTRY_PREFIX)) { + SVNErrorMessage err = SVNErrorMessage.create(SVNErrorCode.CLIENT_PROPERTY_NAME, "Property ''{0}'' is an entry property", propName); + SVNErrorManager.error(err); + } + // nmueller: end if (!revision.isValid()) { SVNErrorMessage err = SVNErrorMessage.create(SVNErrorCode.CLIENT_BAD_REVISION, "Valid revision have to be specified to fetch revision property"); SVNErrorManager.error(err); --------------------------------------------------------------------- To unsubscribe, e-mail: svnkit-users-unsubscribe@... For additional commands, e-mail: svnkit-users-help@... |
|
|
Re: svn entry propertyNormen Müller wrote:
> Dear SVNKit, > > using the original svn client performing an > > svn propedit svn:entry:schedule . > > yields to a > > svn: Property 'svn:entry:schedule' is an entry property > > exception. Shouldn't we extend jsvn wrt. refusing such actions? > > If yes, I would like to volunteer. > > Cheers, > /nm properties. Is the former one restricted to versioned entries and the latter one to entire working copies? Cheers, /nm --------------------------------------------------------------------- To unsubscribe, e-mail: svnkit-users-unsubscribe@... For additional commands, e-mail: svnkit-users-help@... |
|
|
Re: svn entry propertyThis one is even nicer ;-)
Index: /home/nmueller/svnkit/trunk/svnkit/src/org/tmatesoft/svn/core/wc/SVNWCClient.java =================================================================== --- /home/nmueller/svnkit/trunk/svnkit/src/org/tmatesoft/svn/core/wc/SVNWCClient.java (revision 1431) +++ /home/nmueller/svnkit/trunk/svnkit/src/org/tmatesoft/svn/core/wc/SVNWCClient.java (working copy) @@ -728,7 +728,9 @@ SVNErrorMessage err = SVNErrorMessage.create(SVNErrorCode.CLIENT_REVISION_AUTHOR_CONTAINS_NEWLINE, "Value will not be set unless forced"); SVNErrorManager.error(err); } - if (propName.startsWith(SVNProperty.SVN_WC_PREFIX)) { + // nmueller: start + if (SVNProperty.isWorkingCopyProperty(propName)) { + // nmueller: end SVNErrorMessage err = SVNErrorMessage.create(SVNErrorCode.CLIENT_PROPERTY_NAME, "''{0}'' is a wcprop , thus not accessible to clients", propName); SVNErrorManager.error(err); } @@ -733,7 +735,7 @@ SVNErrorManager.error(err); } // nmueller: start - if (propName != null && propName.startsWith(SVNProperty.SVN_ENTRY_PREFIX)) { + if (SVNProperty.isEntryProperty(propName)) { SVNErrorMessage err = SVNErrorMessage.create(SVNErrorCode.CLIENT_PROPERTY_NAME, "Property ''{0}'' is an entry property", propName); SVNErrorManager.error(err); } @@ -877,7 +879,9 @@ public void doGetPropertyList(File path, String propName, SVNRevision pegRevision, SVNRevision revision, SVNDepth depth, ISVNPropertyHandler handler, Collection changeLists) throws SVNException { - if (propName != null && propName.startsWith(SVNProperty.SVN_WC_PREFIX)) { + // nmueller: start + if (SVNProperty.isWorkingCopyProperty(propName)) { + // nmueller: end SVNErrorMessage err = SVNErrorMessage.create(SVNErrorCode.CLIENT_PROPERTY_NAME, "''{0}'' is a wcprop , thus not accessible to clients", propName); SVNErrorManager.error(err); @@ -883,7 +887,7 @@ SVNErrorManager.error(err); } // nmueller: start - if (propName != null && propName.startsWith(SVNProperty.SVN_ENTRY_PREFIX)) { + if (SVNProperty.isEntryProperty(propName)) { SVNErrorMessage err = SVNErrorMessage.create(SVNErrorCode.CLIENT_PROPERTY_NAME, "Property ''{0}'' is an entry property", propName); SVNErrorManager.error(err); @@ -941,7 +945,9 @@ public void doGetProperty(File path, String propName, SVNRevision pegRevision, SVNRevision revision, SVNDepth depth, ISVNPropertyHandler handler, Collection changeLists) throws SVNException { - if (propName != null && propName.startsWith(SVNProperty.SVN_WC_PREFIX)) { + // nmueller: start + if (SVNProperty.isWorkingCopyProperty(propName)) { + // nmueller: end SVNErrorMessage err = SVNErrorMessage.create(SVNErrorCode.CLIENT_PROPERTY_NAME, "''{0}'' is a wcprop , thus not accessible to clients", propName); SVNErrorManager.error(err); @@ -947,7 +953,7 @@ SVNErrorManager.error(err); } // nmueller: start - if (propName != null && propName.startsWith(SVNProperty.SVN_ENTRY_PREFIX)) { + if (SVNProperty.isEntryProperty(propName)) { SVNErrorMessage err = SVNErrorMessage.create(SVNErrorCode.CLIENT_PROPERTY_NAME, "Property ''{0}'' is an entry property", propName); SVNErrorManager.error(err); @@ -1003,7 +1009,9 @@ } public void doGetProperty(SVNURL url, String propName, SVNRevision pegRevision, SVNRevision revision, SVNDepth depth, ISVNPropertyHandler handler) throws SVNException { - if (propName != null && propName.startsWith(SVNProperty.SVN_WC_PREFIX)) { + // nmueller: start + if (SVNProperty.isWorkingCopyProperty(propName)) { + // nmueller: end SVNErrorMessage err = SVNErrorMessage.create(SVNErrorCode.CLIENT_PROPERTY_NAME, "''{0}'' is a wcprop , thus not accessible to clients", propName); SVNErrorManager.error(err); } @@ -1008,7 +1016,7 @@ SVNErrorManager.error(err); } // nmueller: start - if (propName != null && propName.startsWith(SVNProperty.SVN_ENTRY_PREFIX)) { + if (SVNProperty.isEntryProperty(propName)) { SVNErrorMessage err = SVNErrorMessage.create(SVNErrorCode.CLIENT_PROPERTY_NAME, "Property ''{0}'' is an entry property", propName); SVNErrorManager.error(err); } @@ -1044,7 +1052,9 @@ * @see #doSetRevisionProperty(File,SVNRevision,String,String,boolean,ISVNPropertyHandler) */ public void doGetRevisionProperty(File path, String propName, SVNRevision revision, ISVNPropertyHandler handler) throws SVNException { - if (propName != null && propName.startsWith(SVNProperty.SVN_WC_PREFIX)) { + // nmueller: start + if (SVNProperty.isWorkingCopyProperty(propName)) { + // nmueller: end SVNErrorMessage err = SVNErrorMessage.create(SVNErrorCode.CLIENT_PROPERTY_NAME, "''{0}'' is a wcprop , thus not accessible to clients", propName); SVNErrorManager.error(err); } @@ -1049,7 +1059,7 @@ SVNErrorManager.error(err); } // nmueller: start - if (propName != null && propName.startsWith(SVNProperty.SVN_ENTRY_PREFIX)) { + if (SVNProperty.isEntryProperty(propName)) { SVNErrorMessage err = SVNErrorMessage.create(SVNErrorCode.CLIENT_PROPERTY_NAME, "Property ''{0}'' is an entry property", propName); SVNErrorManager.error(err); } @@ -1087,7 +1097,9 @@ * @see #doSetRevisionProperty(SVNURL,SVNRevision,String,String,boolean,ISVNPropertyHandler) */ public long doGetRevisionProperty(SVNURL url, String propName, SVNRevision revision, ISVNPropertyHandler handler) throws SVNException { - if (propName != null && propName.startsWith(SVNProperty.SVN_WC_PREFIX)) { + // nmueller: start + if (SVNProperty.isWorkingCopyProperty(propName)) { + // nmueller: end SVNErrorMessage err = SVNErrorMessage.create(SVNErrorCode.CLIENT_PROPERTY_NAME, "''{0}'' is a wcprop , thus not accessible to clients", propName); SVNErrorManager.error(err); } @@ -1092,7 +1104,7 @@ SVNErrorManager.error(err); } // nmueller: start - if (propName != null && propName.startsWith(SVNProperty.SVN_ENTRY_PREFIX)) { + if (SVNProperty.isEntryProperty(propName)) { SVNErrorMessage err = SVNErrorMessage.create(SVNErrorCode.CLIENT_PROPERTY_NAME, "Property ''{0}'' is an entry property", propName); SVNErrorManager.error(err); } --------------------------------------------------------------------- To unsubscribe, e-mail: svnkit-users-unsubscribe@... For additional commands, e-mail: svnkit-users-help@... |
|
|
Re: svn entry propertyHello Normen,
answering to your question, svn:wc properties are specific only for the DAV protocol and are used by repository access layer in http requests. They reside in their own all-wc-props file in a .svn directory. I think it's a bug that SVNKit allows modifying them. svn:entry properties are also used by the version control system itself and must not be accessible to users. ---- Alexander Sinyushkin, TMate Software, http://svnkit.com/ - Java [Sub]Versioning Library! Normen Müller wrote: > Dear SVNKit, > > using the original svn client performing an > > svn propedit svn:entry:schedule . > > yields to a > > svn: Property 'svn:entry:schedule' is an entry property > > exception. Shouldn't we extend jsvn wrt. refusing such actions? > > If yes, I would like to volunteer. > > Cheers, > /nm > > --------------------------------------------------------------------- > To unsubscribe, e-mail: svnkit-users-unsubscribe@... > For additional commands, e-mail: svnkit-users-help@... > > > --------------------------------------------------------------------- To unsubscribe, e-mail: svnkit-users-unsubscribe@... For additional commands, e-mail: svnkit-users-help@... |
|
|
Re: svn entry propertyAlexander Sinyushkin wrote:
> Hello Normen, > > answering to your question, svn:wc properties are specific only for > the DAV protocol and are used by repository access layer in http > requests. They reside in their own all-wc-props file in a .svn > directory. I think it's a bug that SVNKit allows modifying them. No, it was my fault! SVNKit refuses editing of 'svn:wc' properties. But, anyway, thank you very much for the explanation. > svn:entry properties are also used by the version control system > itself and must not be accessible to users. Yeah, that was a minor bug in svnkit. I already sent you a patch (actually I sent two, but I would recommend the second one) So to get this right, svn:entry is not related to DAV, right? It is used by svn in general to, for example, schedule an add. With ''gerneral'' I mean, this property is not related to some specific protocol or sth. similar, but belongs to the ''core'' of svn. BTW, I am asking these questions cause I want to extend svn/ svnkit by further untweakable meta-properties. For sure I will use my own prefix, but I want to treat those similar to svn:entry. Cheers, /nm > > ---- > Alexander Sinyushkin, > TMate Software, > http://svnkit.com/ - Java [Sub]Versioning Library! > > Normen Müller wrote: >> Dear SVNKit, >> >> using the original svn client performing an >> >> svn propedit svn:entry:schedule . >> >> yields to a >> >> svn: Property 'svn:entry:schedule' is an entry property >> >> exception. Shouldn't we extend jsvn wrt. refusing such actions? >> >> If yes, I would like to volunteer. >> >> Cheers, >> /nm >> >> --------------------------------------------------------------------- >> To unsubscribe, e-mail: svnkit-users-unsubscribe@... >> For additional commands, e-mail: svnkit-users-help@... >> >> >> > > --------------------------------------------------------------------- > To unsubscribe, e-mail: svnkit-users-unsubscribe@... > For additional commands, e-mail: svnkit-users-help@... > --------------------------------------------------------------------- To unsubscribe, e-mail: svnkit-users-unsubscribe@... For additional commands, e-mail: svnkit-users-help@... |
|
|
Re: svn entry propertyHello Normen,
> So to get this right, svn:entry is not related to DAV, right? It is > used by svn in general to, for example, schedule an add. With > ''gerneral'' I mean, this property is not related to some specific > protocol or sth. similar, but belongs to the ''core'' of svn. Yes, svn:entry properties are common for a working copy format. I mean they are used to store some metainformation on versioned items. > > BTW, I am asking these questions cause I want to extend svn/ svnkit by > further untweakable meta-properties. For sure I will use my own prefix, > but I want to treat those similar to svn:entry. Committed your bugfixes in trunk in revision 4236. Thank you! ---- Alexander Sinyushkin, TMate Software, http://svnkit.com/ - Java [Sub]Versioning Library! Normen Müller wrote: > Alexander Sinyushkin wrote: >> Hello Normen, >> >> answering to your question, svn:wc properties are specific only for >> the DAV protocol and are used by repository access layer in http >> requests. They reside in their own all-wc-props file in a .svn >> directory. I think it's a bug that SVNKit allows modifying them. > No, it was my fault! SVNKit refuses editing of 'svn:wc' properties. > But, anyway, thank you very much for the explanation. > >> svn:entry properties are also used by the version control system >> itself and must not be accessible to users. > Yeah, that was a minor bug in svnkit. I already sent you a patch > (actually I sent two, but I would recommend the second one) > > So to get this right, svn:entry is not related to DAV, right? It is > used by svn in general to, for example, schedule an add. With > ''gerneral'' I mean, this property is not related to some specific > protocol or sth. similar, but belongs to the ''core'' of svn. > > BTW, I am asking these questions cause I want to extend svn/ svnkit by > further untweakable meta-properties. For sure I will use my own prefix, > but I want to treat those similar to svn:entry. > > Cheers, > /nm >> >> ---- >> Alexander Sinyushkin, >> TMate Software, >> http://svnkit.com/ - Java [Sub]Versioning Library! >> >> Normen Müller wrote: >>> Dear SVNKit, >>> >>> using the original svn client performing an >>> >>> svn propedit svn:entry:schedule . >>> >>> yields to a >>> >>> svn: Property 'svn:entry:schedule' is an entry property >>> >>> exception. Shouldn't we extend jsvn wrt. refusing such actions? >>> >>> If yes, I would like to volunteer. >>> >>> Cheers, >>> /nm >>> >>> --------------------------------------------------------------------- >>> To unsubscribe, e-mail: svnkit-users-unsubscribe@... >>> For additional commands, e-mail: svnkit-users-help@... >>> >>> >>> >> >> --------------------------------------------------------------------- >> To unsubscribe, e-mail: svnkit-users-unsubscribe@... >> For additional commands, e-mail: svnkit-users-help@... >> > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: svnkit-users-unsubscribe@... > For additional commands, e-mail: svnkit-users-help@... > > > --------------------------------------------------------------------- To unsubscribe, e-mail: svnkit-users-unsubscribe@... For additional commands, e-mail: svnkit-users-help@... |
| Free Forum Powered by Nabble | Forum Help |