Rev 51: Clarify the know problems about compatibility. in file:///home/vila/src/bzr/devnotes/

Vincent Ladeuil v.ladeuil+lp at free.fr
Fri May 13 09:24:52 UTC 2011


At file:///home/vila/src/bzr/devnotes/

------------------------------------------------------------
revno: 51
revision-id: v.ladeuil+lp at free.fr-20110513092452-4ettxgxz575cnkfx
parent: v.ladeuil+lp at free.fr-20110512150748-uur855snm98antg2
committer: Vincent Ladeuil <v.ladeuil+lp at free.fr>
branch nick: devnotes
timestamp: Fri 2011-05-13 11:24:52 +0200
message:
  Clarify the know problems about compatibility.
-------------- next part --------------
=== modified file 'configuration.txt'
--- a/configuration.txt	2011-05-12 15:07:48 +0000
+++ b/configuration.txt	2011-05-13 09:24:52 +0000
@@ -334,7 +334,7 @@
 * a local path.
 
 Note that for both the provided context and the section names, if an URL uses
-a ``file:///``form, it is converted to a local path.
+a ``file:///`` form, it is converted to a local path.
 
 The sections names can use globs for each path component
 (i.e. ``/dir/*/subdir`` is allowed but ``/dir/\*\*/subdir`` will match
@@ -526,23 +526,59 @@
 Compatibility
 =============
 
-* The ``DEFAULT`` section in bazaar.conf should still be recognized but
-  won't be mandatory anymore.
-
-* Other sections in the ``bazaar.conf`` configuration file are still
-  supported but their use is discouraged and we may deprecate them in the
-  future. Plugin authors are encouraged to migrate to the new name space
-  scheme by prefixing their options with their plugin name.
+There are ways to keep the same files while ensuring compatibility via various
+tricks but there are cases where using new files to replace the old ones is
+definitely easier:
+
+* no need to ensure that the new files are correctly handled by old bzr
+  versions,
+
+* making it clear for users that there is a switch and let them migrate at
+  their own pace.
+
+The known cases so far are described below.
+
+Obvious at this point:
+
+* [DEFAULT] section is replaced by a no-name section. This is trival to
+  automate by copying the section content into the ``defaults`` no-name
+  section. On the other hand, we may want to rename the options too and trying
+  to obey both option names in the same file is harder than accepting one name
+  is the new file while accepting the old name if the old file is still
+  present.
 
 * Option policies should be deprecated:
 
   * The ``norecurse`` policy is useless, all options are recursive by
     default. If specific values are needed for specific paths, they can just
-    be defined as such.
+    be defined as such (in the appropriate sections or files).
 
   * The ``appendpath`` policy should be implemented via interpolation and a
     ``relpath`` option provided by the configuration framework.
 
+* Section order in ``locations.conf`` has issues which make a migration to a
+  different way to organize the sections (hence the file content) far easier
+  with a new file.
+
+* ``locations.conf`` is really for overrides but many users have been using it
+  to provide defaults. There is no way to know if the whole content has been
+  used for defaults or overrides or a mix of both. So there is now way to
+  migrate this automatically.
+
+Unclear at this point:
+
+* [BOOKMARKS] section can be replaced by ``bookmarks.xxx`` options (the
+  bookmarks plugins already uses ``bookmarks_xxx`` in branch.conf since no
+  sections were supported there). This could be automated by creating the
+  corresponding options ?
+
+* [ALIASES] section can be replaced by corresponding bzr.alias.xxx
+  options. This could be automated by creating the corresponding options ?
+
+* I don't know about other sections, feedback welcome. Plugin authors are
+  encouraged to migrate to the new name space scheme by prefixing their
+  options with their plugin name.
+
 Notes
 =====
 



More information about the bazaar-commits mailing list