1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
|
=================================
Breezy Developer Document Catalog
=================================
Overall developer documentation
===============================
* `Developer Guide <HACKING.html>`_
* `Architectural Overview <overview.html>`_ |--| describes some of the
most important classes and concepts.
* `breezy API reference <https://www.breezy-vcs.org/developers/api/>`_
(external link)
|--| automatically generated API reference information
* `Integrating with Breezy <http://wiki.bazaar.canonical.com/Integrating_with_Bazaar>`_
(wiki) |--| a guide for writing Python programs that work with Breezy.
* `Revision Properties <revision-properties.html>`_ |--| An application
can set arbitrary per-revision key/value pairs to store app-specific
data.
* `Testing <testing.html>`_ |--| Guide to writing tests for Breezy.
* `Code Review <code-review.html>`_.
* `Breezy Code Style Guide <code-style.html>`_.
* `Writing plugins <plugin-development.html>`_
|--| specific advice on writing Breezy plugins.
* `Documenting changes <documenting-changes.html>`_.
Process
=======
* `Releasing Breezy <releasing.html>`_ |--|
Checklist to make a release of Breezy.
* `Managing the Breezy PPA <ppa.html>`_ |--| Packaging Breezy for Ubuntu.
* `Giving back <http://wiki.bazaar.canonical.com/BzrGivingBack>`_ (wiki) |--| How to get
your changes to Breezy integrated into a release.
* `Profiling notes <profiling.html>`_ |--| Instructions on how to profile
brz code and visualize the results.
* `EC2 resources <ec2.html>`_ |--| A team resource for
Windows packaging and testing, and Ubuntu testing.
* `Tracking Bugs in Breezy <bug-handling.html>`_ |--| How we use the bug
tracker.
Architecture overviews
======================
* `Transports <transports.html>`_ |--| Transport virtual filesystem
abstraction.
Plans
=====
* `Performance roadmap <performance-roadmap.html>`_ |--| The roadmap
for fixing performance in brz over the next few releases.
* `Co-located branches <colocated-branches.html>`_ |--| Planned(?) support
for storing multiple branches in one file-system directory.
* `Breezy Windows Shell Extension Options <tortoise-strategy.html>`_ |--|
Implementation strategy for Breezy Windows Shell Extensions, aka
TortoiseBzr.
* `CHK Optimized index <improved_chk_index.html>`_
Specifications
==============
* `API versioning <api-versioning.html>`_ |--| breezy API versioning.
* `Apport error reporting <apport.html>`_ |--| Capture data to report
bugs.
* `Authentication ring <authentication-ring.html>`_ |--| Configuring
authentication.
* `Bundles <bundles.html>`_ |--| All about brz bundles.
* `Container format <container-format.html>`_ |--| Notes on a container format
for streaming and storing Breezy data.
* `Groupcompress <groupcompress-design.html>`_ |--| Notes on the compression
technology used in CHK repositories.
* `Indices <indices.html>`_ |--| The index facilities available within
breezy.
* `Inventories <inventory.html>`_ |--| Tree shape abstraction.
* `LCA merge <lca-merge.html>`_ |--| A nice new merge algorithm.
* `Network protocol <network-protocol.html>`_ |--| Custom network protocol.
* `Plugin APIs <plugin-api.html>`_ |--| APIs plugins should use.
* `Repositories <repository.html>`_ |--| What repositories do and are used for.
* `Repository stream <repository-stream.html>`_ |--| Notes on streaming data
for repositories (a layer above the container format).
* `Integration Guide <integration.html>`_ |--| A guide to integrate breezy into
any python application.
* `Breezy and case-insensitive file systems <case-insensitive-file-systems.html>`_
|--| How Breezy operates on case-insensitive file systems such as commonly
found on Windows, USB sticks, etc.
* `Development repository formats <development-repo.html>`_ |--| How to
work with repository formats that are still under development.
Contains instructions for those implementing new formats, of course,
but also for (bleeding-edge) end users of those formats.
Data formats
============
* `Knit pack repositories <packrepo.html>`_ |--| KnitPack repositories
(new in Bazaar 0.92).
Implementation notes
====================
* `BTree Index Prefetch <btree_index_prefetch.html>`_ |--| How brz decides
to pre-read extra nodes in the btree index.
* `Computing last_modified values <last-modified.html>`_ for inventory
entries
* `Content filtering <content-filtering.html>`_
* `LCA Tree Merging <lca_tree_merging.html>`_ |--| Merging tree-shape when
there is not a single unique ancestor (criss-cross merge).
Miscellaneous
=============
* `dirstate <dirstate.html>`_ |--| An observation re. the dirstate file
* `"brz update" performance analysis <update.html>`_ |--| "brz update"
performance analysis
.. |--| unicode:: U+2014
..
vim: ft=rst tw=74 ai
|