/brz/remove-bazaar

To get this branch, use:
bzr branch http://gegoxaren.bato24.eu/bzr/brz/remove-bazaar

« back to all changes in this revision

Viewing changes to doc/developers/config-rationale.txt

  • Committer: Jelmer Vernooij
  • Date: 2017-11-11 12:51:45 UTC
  • mto: This revision was merged to the branch mainline in revision 6804.
  • Revision ID: jelmer@jelmer.uk-20171111125145-zw639zp14j8b2cin
Bunch of developer docs changes:

 * Move plans to plans/
 * Move performance analysis & planning docs to plans/performance/
 * Change Bazaar references to Breezy
 * Add branding guidelines

Show diffs side-by-side

added added

removed removed

Lines of Context:
6
6
====
7
7
 
8
8
Not all needs can be addressed by the default values used inside bzr and
9
 
bzrlib, no matter how well they are chosen (and they are ;).
 
9
breezy, no matter how well they are chosen (and they are ;).
10
10
 
11
11
Options that are rarely used don't deserve a corresponding command line
12
12
switch in one or several commands.
13
13
 
14
 
Many parts of ``bzrlib`` depends on some constants though and the user
 
14
Many parts of ``breezy`` depends on some constants though and the user
15
15
should be able to customize the behavior to suit his needs so these
16
16
constants need to become configuration options or more generally, be easier
17
17
to set.
28
28
Current issues
29
29
==============
30
30
 
31
 
* Many parts of ``bzrlib`` declare constants and there is no way for the
 
31
* Many parts of ``breezy`` declare constants and there is no way for the
32
32
  user to look at or modify them (see http://pad.lv/832061).
33
33
 
34
34
* The old design requires a configuration object to create, modify or delete
158
158
  transports only and the hpss implementing the corresponding verbs).
159
159
 
160
160
* While the underlying ``ConfigObj`` implementation provides an
161
 
  interpolation feature, the ``bzrlib`` implementation doesn't provide an
 
161
  interpolation feature, the ``breezy`` implementation doesn't provide an
162
162
  easy handling of templates where other configuration options can be
163
163
  interpolated. Instead, ``locations.conf`` (and only it) allows for
164
164
  ``appendpath`` and ``norecurse``. (Cross-section, cross-file interpolation
218
218
 
219
219
The option name space is organized by topic:
220
220
 
221
 
* bzrlib options are grouped by topic (``branch``, ``tree``, ``repo``)
 
221
* breezy options are grouped by topic (``branch``, ``tree``, ``repo``)
222
222
 
223
223
* plugins are encouraged (but not required) to prefix their specific options
224
224
  with their name (``qbzr.`` for qbzr)
263
263
Some option values can be templates and contain references to other
264
264
options. This is especially useful to define URLs in sections shared for
265
265
multiple branches for example. It can also be used to describe commands
266
 
where some parameters are set by ``bzrlib`` at runtime.
 
266
where some parameters are set by ``breezy`` at runtime.
267
267
 
268
268
Since option values are text-only, and to avoid clashing with other option
269
269
expansion (also known as interpolation) syntaxes, references are enclosed
276
276
configuration applies to a given branch.
277
277
 
278
278
The interpolation implementation should accept an additional dict so that
279
 
``bzrlib`` or plugins can define references that can be expanded without
 
279
``breezy`` or plugins can define references that can be expanded without
280
280
being existing configuration options::
281
281
 
282
282
  diff_command={cmd} {cmd_opts} {file_a} {file_b}