You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@subversion.apache.org by pb...@apache.org on 2012/10/09 20:41:55 UTC

svn commit: r1396184 - in /subversion/branches/auto-props-sdc/subversion: include/svn_props.h libsvn_client/add.c libsvn_client/client.h libsvn_client/commit.c tests/cmdline/autoprop_tests.py tests/cmdline/svntest/main.py

Author: pburba
Date: Tue Oct  9 18:41:55 2012
New Revision: 1396184

URL: http://svn.apache.org/viewvc?rev=1396184&view=rev
Log:
On the auto-props-sdc branch: Rename the reserved property
"svn:config:auto-props" to svn:iprop-auto-props".

First and foremost this is to address cmpilato's concerns, see
http://svn.haxx.se/dev/archive-2012-10/0097.shtml  But it is also a bit of
bike-shedding; since the old name contained the word "config" it needlessly
conflated itself with the config file which is home of the traditional
auto-props.  I think the new name makes it clearer that these auto-props
are outside of the config file.

* subversion/include/svn_props.h
  (SVN_CONFIG_PROP_PREFIX): Redefine.

* subversion/libsvn_client/add.c
* subversion/libsvn_client/client.h
* subversion/libsvn_client/commit.c
* subversion/tests/cmdline/autoprop_tests.py
  Use the new property name in comments, no logic changes.

* subversion/tests/cmdline/svntest/main.py
  (SVN_CONFIG_AUTOPROPS): Redefine.


Modified:
    subversion/branches/auto-props-sdc/subversion/include/svn_props.h
    subversion/branches/auto-props-sdc/subversion/libsvn_client/add.c
    subversion/branches/auto-props-sdc/subversion/libsvn_client/client.h
    subversion/branches/auto-props-sdc/subversion/libsvn_client/commit.c
    subversion/branches/auto-props-sdc/subversion/tests/cmdline/autoprop_tests.py
    subversion/branches/auto-props-sdc/subversion/tests/cmdline/svntest/main.py

Modified: subversion/branches/auto-props-sdc/subversion/include/svn_props.h
URL: http://svn.apache.org/viewvc/subversion/branches/auto-props-sdc/subversion/include/svn_props.h?rev=1396184&r1=1396183&r2=1396184&view=diff
==============================================================================
--- subversion/branches/auto-props-sdc/subversion/include/svn_props.h (original)
+++ subversion/branches/auto-props-sdc/subversion/include/svn_props.h Tue Oct  9 18:41:55 2012
@@ -385,7 +385,7 @@ svn_prop_name_is_valid(const char *prop_
 #define SVN_PROP_MERGEINFO SVN_PROP_PREFIX "mergeinfo"
 
 /** Prefix for all Subersion configurable inhertiable properties. */
-#define SVN_CONFIG_PROP_PREFIX SVN_PROP_PREFIX "config:"
+#define SVN_CONFIG_PROP_PREFIX SVN_PROP_PREFIX "iprop-"
 
 /** Merge info property used to record a resource's merge history. */
 #define SVN_CONFIG_PROP_AUTO_PROPS SVN_CONFIG_PROP_PREFIX "auto-props"

Modified: subversion/branches/auto-props-sdc/subversion/libsvn_client/add.c
URL: http://svn.apache.org/viewvc/subversion/branches/auto-props-sdc/subversion/libsvn_client/add.c?rev=1396184&r1=1396183&r2=1396184&view=diff
==============================================================================
--- subversion/branches/auto-props-sdc/subversion/libsvn_client/add.c (original)
+++ subversion/branches/auto-props-sdc/subversion/libsvn_client/add.c Tue Oct  9 18:41:55 2012
@@ -284,7 +284,7 @@ add_file(const char *local_abspath,
       apr_hash_t *file_autoprops;
 
       /* Get automatic properties */
-      /* Grab the inherited svn:config:auto-props and config file
+      /* Grab the inherited svn:iprop-auto-props and config file
          auto-props for this file if we haven't already got them
          when iterating over the file's unversioned parents. */
       if (autoprops == NULL)
@@ -372,12 +372,12 @@ add_file(const char *local_abspath,
  * if necessary.
  *
  * If not NULL, *CONFIG_AUTOPROPS is a hash representing the config file and
- * svn:config:auto-props autoprops which apply to DIR_ABSPATH.  It maps
+ * svn:iprop-auto-props autoprops which apply to DIR_ABSPATH.  It maps
  * const char * file patterns to another hash which maps const char *
  * property names to const char *property values.  If *CONFIG_AUTOPROPS is
  * NULL and DIR_ABSPATH is unversioned, then this function will populate
  * *CONFIG_AUTOPROPS (allocated in RESULT_POOL) using DIR_ABSPATH's nearest
- * versioned parent to determine the svn:config:auto-props which DIR_ABSPATH
+ * versioned parent to determine the svn:iprop-auto-props which DIR_ABSPATH
  * will inherit once added.
  *
  * If CTX->CANCEL_FUNC is non-null, call it with CTX->CANCEL_BATON to allow
@@ -426,7 +426,7 @@ add_dir_recursive(const char *dir_abspat
         }
     }
 
-  /* Grab the inherited svn:config:auto-props and config file
+  /* Grab the inherited svn:iprop-auto-props and config file
      auto-props for the roots of any unversioned trees. */
   if (!entry_exists && *config_autoprops == NULL)
     {
@@ -500,7 +500,7 @@ add_dir_recursive(const char *dir_abspat
 }
 
 /* This structure is used as baton for collecting the config entries
-   in the auto-props section and any inherited svn:config:auto-props
+   in the auto-props section and any inherited svn:iprop-auto-props
    properties.
 */
 typedef struct collect_auto_props_baton_t
@@ -665,7 +665,7 @@ svn_client__get_all_auto_props(apr_hash_
 
   /* Are "traditional" auto-props enabled?  If so grab them from the
     config.  This is our starting set auto-props, which may be overriden
-    by svn:config:auto-props. */
+    by svn:iprop-auto-props. */
   SVN_ERR(svn_config_get_bool(cfg, &use_autoprops,
                               SVN_CONFIG_SECTION_MISCELLANY,
                               SVN_CONFIG_OPTION_ENABLE_AUTO_PROPS, FALSE));
@@ -744,7 +744,7 @@ svn_client__get_all_auto_props(apr_hash_
           config_auto_prop_pattern = svn_stringbuf_create_empty(iterpool);
           config_auto_prop_val = svn_stringbuf_create_empty(iterpool);
 
-          /* Parse svn:config:auto-props value. */
+          /* Parse svn:iprop-auto-props value. */
           while (*ch != '\0')
             {
               svn_stringbuf_setempty(config_auto_prop_pattern);

Modified: subversion/branches/auto-props-sdc/subversion/libsvn_client/client.h
URL: http://svn.apache.org/viewvc/subversion/branches/auto-props-sdc/subversion/libsvn_client/client.h?rev=1396184&r1=1396183&r2=1396184&view=diff
==============================================================================
--- subversion/branches/auto-props-sdc/subversion/libsvn_client/client.h (original)
+++ subversion/branches/auto-props-sdc/subversion/libsvn_client/client.h Tue Oct  9 18:41:55 2012
@@ -351,11 +351,11 @@ svn_error_t *svn_client__get_paths_auto_
   apr_pool_t *scratch_pool);
 
 /* Gather all auto-props from CTX->config (or none if auto-props are
-   disabled) and all svn:config:auto-props explicitly set on or inherited
+   disabled) and all svn:iprop-auto-props explicitly set on or inherited
    by PATH_OR_URL.
 
    If PATH_OR_URL is an unversioned WC path then gather the
-   svn:config:auto-props inherited by PATH_OR_URL's nearest versioned
+   svn:iprop-auto-props inherited by PATH_OR_URL's nearest versioned
    parent.
 
    If PATH_OR_URL is a URL ask for the properties @HEAD, if it is a WC
@@ -366,10 +366,10 @@ svn_error_t *svn_client__get_paths_auto_
    names to const char *property values.
 
    If a given property name exists for the same pattern in both the config
-   file and in an a svn:config:auto-props property, the latter overrides the
+   file and in an a svn:iprop-auto-props property, the latter overrides the
    former.  If a given property name exists for the same pattern in two
-   different inherited svn:config:auto-props, then the closer path-wise
-   property overrides the more distant. svn:config:auto-props explicitly set
+   different inherited svn:iprop-auto-props, then the closer path-wise
+   property overrides the more distant. svn:iprop-auto-props explicitly set
    on PATH_OR_URL have the highest precedence and override inherited props
    and config file settings.
 

Modified: subversion/branches/auto-props-sdc/subversion/libsvn_client/commit.c
URL: http://svn.apache.org/viewvc/subversion/branches/auto-props-sdc/subversion/libsvn_client/commit.c?rev=1396184&r1=1396183&r2=1396184&view=diff
==============================================================================
--- subversion/branches/auto-props-sdc/subversion/libsvn_client/commit.c (original)
+++ subversion/branches/auto-props-sdc/subversion/libsvn_client/commit.c Tue Oct  9 18:41:55 2012
@@ -77,7 +77,7 @@ typedef struct import_ctx_t
   svn_magic__cookie_t *magic_cookie;
 
   /* Collection of all possible configuration file dictated auto-props and
-     svn:config:autoprops.  A hash mapping const char * file patterns to a
+     svn:iprop-auto-props.  A hash mapping const char * file patterns to a
      second hash which maps const char * property names to const char *
      property values.  Properties which don't have a value, e.g. svn:executable,
      simply map the property name to an empty string. */
@@ -599,7 +599,7 @@ import_dir(const svn_delta_editor_t *edi
  * EXCLUDES is a hash whose keys are absolute paths to exclude from
  * the import (values are unused).
  *
- * AUTOPROPS is hash of all config file autoprops and svn:config:auto-props
+ * AUTOPROPS is hash of all config file autoprops and svn:iprop-auto-props
  * inherited by the import target, see the IMPORT_CTX member of the same
  * name.
  *
@@ -981,7 +981,7 @@ svn_client_import5(const char *path,
                                     commit_baton, NULL, TRUE,
                                     scratch_pool));
 
-  /* Get inherited svn:config:auto-props for the location we
+  /* Get inherited svn:iprop-auto-props for the location we
      are importing to. */
   SVN_ERR(svn_client__get_all_auto_props(&autoprops, url, ctx,
                                          scratch_pool, iterpool));

Modified: subversion/branches/auto-props-sdc/subversion/tests/cmdline/autoprop_tests.py
URL: http://svn.apache.org/viewvc/subversion/branches/auto-props-sdc/subversion/tests/cmdline/autoprop_tests.py?rev=1396184&r1=1396183&r2=1396184&view=diff
==============================================================================
--- subversion/branches/auto-props-sdc/subversion/tests/cmdline/autoprop_tests.py (original)
+++ subversion/branches/auto-props-sdc/subversion/tests/cmdline/autoprop_tests.py Tue Oct  9 18:41:55 2012
@@ -385,7 +385,7 @@ def check_inheritable_autoprops(sbox, au
 #----------------------------------------------------------------------
 def inheritable_autoprops_test(sbox, cmd, cfgenable, clienable, subdir,
                                do_import_or_add=True):
-  """configurable autoprops and svn:config:auto-props test.
+  """configurable autoprops and svn:iprop-auto-props test.
 
      CMD is the subcommand to test: 'import' or 'add'
      if CFGENABLE is true, enable autoprops in the config file, else disable
@@ -438,7 +438,7 @@ def inheritable_autoprops_test(sbox, cmd
   else:
     files_wc_dir = wc_dir
 
-  # Set differing svn:config:auto-props properties on various directories.
+  # Set differing svn:iprop-auto-props properties on various directories.
   sbox.simple_propset(SVN_CONFIG_AUTOPROPS,
                       '*.c = svn:eol-style=CRLF\n'
                       '*.bat = svn:executable',
@@ -589,10 +589,10 @@ def svn_config_autoprops_imp_yes_no(sbox
   inheritable_autoprops_test(sbox, 'import', 1, -1, '')
 
 #----------------------------------------------------------------------
-# Test svn:config:auto-props when 'svn add' targets an already versioned
+# Test svn:iprop-auto-props when 'svn add' targets an already versioned
 # target.
 def svn_config_autoprops_add_versioned_target(sbox):
-  "svn:config:auto-props and versioned target"
+  "svn:iprop-auto-props and versioned target"
 
   config_dir = inheritable_autoprops_test(sbox, 'add', 1, 0, '', False)
 

Modified: subversion/branches/auto-props-sdc/subversion/tests/cmdline/svntest/main.py
URL: http://svn.apache.org/viewvc/subversion/branches/auto-props-sdc/subversion/tests/cmdline/svntest/main.py?rev=1396184&r1=1396183&r2=1396184&view=diff
==============================================================================
--- subversion/branches/auto-props-sdc/subversion/tests/cmdline/svntest/main.py (original)
+++ subversion/branches/auto-props-sdc/subversion/tests/cmdline/svntest/main.py Tue Oct  9 18:41:55 2012
@@ -175,7 +175,7 @@ work_dir = "svn-test-work"
 SVN_PROP_MERGEINFO = "svn:mergeinfo"
 
 # Constant for the inheritabled auto-props property.
-SVN_CONFIG_AUTOPROPS = "svn:config:auto-props"
+SVN_CONFIG_AUTOPROPS = "svn:iprop-auto-props"
 
 # Where we want all the repositories and working copies to live.
 # Each test will have its own!



Re: svn commit: r1396184 - in /subversion/branches/auto-props-sdc/subversion: include/svn_props.h libsvn_client/add.c libsvn_client/client.h libsvn_client/commit.c tests/cmdline/autoprop_tests.py tests/cmdline/svntest/main.py

Posted by Mark Phippard <ma...@gmail.com>.
On Tue, Oct 9, 2012 at 3:30 PM, Paul Burba <pt...@gmail.com> wrote:
> On Tue, Oct 9, 2012 at 2:55 PM, Johan Corveleyn <jc...@gmail.com> wrote:
>> On Tue, Oct 9, 2012 at 8:46 PM, Mark Phippard <ma...@gmail.com> wrote:
>>> On Tue, Oct 9, 2012 at 2:41 PM,  <pb...@apache.org> wrote:
>>>> Author: pburba
>>>> Date: Tue Oct  9 18:41:55 2012
>>>> New Revision: 1396184
>>>>
>>>> URL: http://svn.apache.org/viewvc?rev=1396184&view=rev
>>>> Log:
>>>> On the auto-props-sdc branch: Rename the reserved property
>>>> "svn:config:auto-props" to svn:iprop-auto-props".
>>>>
>>>> First and foremost this is to address cmpilato's concerns, see
>>>> http://svn.haxx.se/dev/archive-2012-10/0097.shtml  But it is also a bit of
>>>> bike-shedding; since the old name contained the word "config" it needlessly
>>>> conflated itself with the config file which is home of the traditional
>>>> auto-props.  I think the new name makes it clearer that these auto-props
>>>> are outside of the config file.
>>>
>>> I liked the use of "config" precisely because this property IS
>>> somewhat connected to what is in that file.  I am not against dropping
>>> config, but if we do, then I would also drop iprop and just make the
>>> property be svn:auto-props
>
> I shy away from 'svn:auto-props' because eventually we'll have some
> sort of ignores-server-dictated-config via inheritable props and
> svn:ignore is already taken, so we probably want some common prefix to
> this class of inheritable properties.

I was going to mention that, but remembering the name of the setting
in config I assumed we would just name the new property
svn:global-ignores


-- 
Thanks

Mark Phippard
http://markphip.blogspot.com/

Re: svn commit: r1396184 - in /subversion/branches/auto-props-sdc/subversion: include/svn_props.h libsvn_client/add.c libsvn_client/client.h libsvn_client/commit.c tests/cmdline/autoprop_tests.py tests/cmdline/svntest/main.py

Posted by Paul Burba <pt...@gmail.com>.
On Tue, Oct 9, 2012 at 4:04 PM, C. Michael Pilato <cm...@collab.net> wrote:
> On 10/09/2012 03:30 PM, Paul Burba wrote:
>>> I don't like the term "iprop" (assuming that stands for "inheritable
>>> property"), because as I understood it all properties are inheritable
>>> (and it's up to the "user" of that property to decide to use it in an
>>> inheritable manner or not).
>>
>> Sure, it's up to the user, caller, script, etc., but this is a
>> reserved property that Subversion itself will always consider
>> inheritable, so I don't believe "iprop" is misleading in any way.
>
> [Just painting the bike shed.]
>
> In retrospect, I think "svn:config-" betrays too much of the origins of the
> feature.  Were we designing this feature from the get-go, having *not*
> already passed through lines of thought that included such phrases as
> "server-dictated configuration", I doubt we'd wind up here.
>
> I like where you're going with "iprop" -- telling the user right up front
> that this sucker is inheritable.  I just don't like "iprop" because it
> sounds like a brand name for a line of faux Apple computers used in
> furniture showrooms.

Point taken :-)

> Just kidding, but seriously, a new user will have no
> idea what the "i" in "iprops" is for.  I'd suggest just being explicit, if
> verbose, and going with "svn:inheritable-auto-props" (and
> "svn:inheritable-ignores", and ...).

+1

I like that color.

-- 
Paul T. Burba
CollabNet, Inc. -- www.collab.net -- Enterprise Cloud Development
Skype: ptburba

> --
> C. Michael Pilato <cm...@collab.net>
> CollabNet   <>   www.collab.net   <>   Enterprise Cloud Development

Re: svn commit: r1396184 - in /subversion/branches/auto-props-sdc/subversion: include/svn_props.h libsvn_client/add.c libsvn_client/client.h libsvn_client/commit.c tests/cmdline/autoprop_tests.py tests/cmdline/svntest/main.py

Posted by "C. Michael Pilato" <cm...@collab.net>.
On 10/09/2012 03:30 PM, Paul Burba wrote:
>> I don't like the term "iprop" (assuming that stands for "inheritable
>> property"), because as I understood it all properties are inheritable
>> (and it's up to the "user" of that property to decide to use it in an
>> inheritable manner or not).
> 
> Sure, it's up to the user, caller, script, etc., but this is a
> reserved property that Subversion itself will always consider
> inheritable, so I don't believe "iprop" is misleading in any way.

[Just painting the bike shed.]

In retrospect, I think "svn:config-" betrays too much of the origins of the
feature.  Were we designing this feature from the get-go, having *not*
already passed through lines of thought that included such phrases as
"server-dictated configuration", I doubt we'd wind up here.

I like where you're going with "iprop" -- telling the user right up front
that this sucker is inheritable.  I just don't like "iprop" because it
sounds like a brand name for a line of faux Apple computers used in
furniture showrooms.  Just kidding, but seriously, a new user will have no
idea what the "i" in "iprops" is for.  I'd suggest just being explicit, if
verbose, and going with "svn:inheritable-auto-props" (and
"svn:inheritable-ignores", and ...).

-- 
C. Michael Pilato <cm...@collab.net>
CollabNet   <>   www.collab.net   <>   Enterprise Cloud Development


Re: svn commit: r1396184 - in /subversion/branches/auto-props-sdc/subversion: include/svn_props.h libsvn_client/add.c libsvn_client/client.h libsvn_client/commit.c tests/cmdline/autoprop_tests.py tests/cmdline/svntest/main.py

Posted by Paul Burba <pt...@gmail.com>.
On Tue, Oct 9, 2012 at 2:55 PM, Johan Corveleyn <jc...@gmail.com> wrote:
> On Tue, Oct 9, 2012 at 8:46 PM, Mark Phippard <ma...@gmail.com> wrote:
>> On Tue, Oct 9, 2012 at 2:41 PM,  <pb...@apache.org> wrote:
>>> Author: pburba
>>> Date: Tue Oct  9 18:41:55 2012
>>> New Revision: 1396184
>>>
>>> URL: http://svn.apache.org/viewvc?rev=1396184&view=rev
>>> Log:
>>> On the auto-props-sdc branch: Rename the reserved property
>>> "svn:config:auto-props" to svn:iprop-auto-props".
>>>
>>> First and foremost this is to address cmpilato's concerns, see
>>> http://svn.haxx.se/dev/archive-2012-10/0097.shtml  But it is also a bit of
>>> bike-shedding; since the old name contained the word "config" it needlessly
>>> conflated itself with the config file which is home of the traditional
>>> auto-props.  I think the new name makes it clearer that these auto-props
>>> are outside of the config file.
>>
>> I liked the use of "config" precisely because this property IS
>> somewhat connected to what is in that file.  I am not against dropping
>> config, but if we do, then I would also drop iprop and just make the
>> property be svn:auto-props

I shy away from 'svn:auto-props' because eventually we'll have some
sort of ignores-server-dictated-config via inheritable props and
svn:ignore is already taken, so we probably want some common prefix to
this class of inheritable properties.

> +1.
>
> I don't like the term "iprop" (assuming that stands for "inheritable
> property"), because as I understood it all properties are inheritable
> (and it's up to the "user" of that property to decide to use it in an
> inheritable manner or not).

Sure, it's up to the user, caller, script, etc., but this is a
reserved property that Subversion itself will always consider
inheritable, so I don't believe "iprop" is misleading in any way.

Regardless, I don't feel very strongly about this one way or the
other.  Barring any prop-"iprop" feedback I'll switch it to
'svn:config-auto-props' in the near future.

-- 
Paul T. Burba
CollabNet, Inc. -- www.collab.net -- Enterprise Cloud Development
Skype: ptburba

> --
> Johan

Re: svn commit: r1396184 - in /subversion/branches/auto-props-sdc/subversion: include/svn_props.h libsvn_client/add.c libsvn_client/client.h libsvn_client/commit.c tests/cmdline/autoprop_tests.py tests/cmdline/svntest/main.py

Posted by Johan Corveleyn <jc...@gmail.com>.
On Tue, Oct 9, 2012 at 8:46 PM, Mark Phippard <ma...@gmail.com> wrote:
> On Tue, Oct 9, 2012 at 2:41 PM,  <pb...@apache.org> wrote:
>> Author: pburba
>> Date: Tue Oct  9 18:41:55 2012
>> New Revision: 1396184
>>
>> URL: http://svn.apache.org/viewvc?rev=1396184&view=rev
>> Log:
>> On the auto-props-sdc branch: Rename the reserved property
>> "svn:config:auto-props" to svn:iprop-auto-props".
>>
>> First and foremost this is to address cmpilato's concerns, see
>> http://svn.haxx.se/dev/archive-2012-10/0097.shtml  But it is also a bit of
>> bike-shedding; since the old name contained the word "config" it needlessly
>> conflated itself with the config file which is home of the traditional
>> auto-props.  I think the new name makes it clearer that these auto-props
>> are outside of the config file.
>
> I liked the use of "config" precisely because this property IS
> somewhat connected to what is in that file.  I am not against dropping
> config, but if we do, then I would also drop iprop and just make the
> property be svn:auto-props

+1.

I don't like the term "iprop" (assuming that stands for "inheritable
property"), because as I understood it all properties are inheritable
(and it's up to the "user" of that property to decide to use it in an
inheritable manner or not).

-- 
Johan

Re: svn commit: r1396184 - in /subversion/branches/auto-props-sdc/subversion: include/svn_props.h libsvn_client/add.c libsvn_client/client.h libsvn_client/commit.c tests/cmdline/autoprop_tests.py tests/cmdline/svntest/main.py

Posted by Mark Phippard <ma...@gmail.com>.
On Tue, Oct 9, 2012 at 2:41 PM,  <pb...@apache.org> wrote:
> Author: pburba
> Date: Tue Oct  9 18:41:55 2012
> New Revision: 1396184
>
> URL: http://svn.apache.org/viewvc?rev=1396184&view=rev
> Log:
> On the auto-props-sdc branch: Rename the reserved property
> "svn:config:auto-props" to svn:iprop-auto-props".
>
> First and foremost this is to address cmpilato's concerns, see
> http://svn.haxx.se/dev/archive-2012-10/0097.shtml  But it is also a bit of
> bike-shedding; since the old name contained the word "config" it needlessly
> conflated itself with the config file which is home of the traditional
> auto-props.  I think the new name makes it clearer that these auto-props
> are outside of the config file.

I liked the use of "config" precisely because this property IS
somewhat connected to what is in that file.  I am not against dropping
config, but if we do, then I would also drop iprop and just make the
property be svn:auto-props

-- 
Thanks

Mark Phippard
http://markphip.blogspot.com/