1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18 """High level bindings for the Arch revision control system
19
20 Archive Namespace Class Hierarchy
21 ---------------------------------
22
23 :group Namespace Classes: ArchiveLocation, Archive, Category, Branch, Version,
24 Revision
25
26 :group Abstract Namespace Classes: NamespaceObject, Setupable, Package,
27 CategoryIterable, BranchIterable, VersionIterable, RevisionIterable,
28 ArchiveItem, CategoryItem, BranchItem, VersionItem
29
30 :group Archive-Related Classes: RevisionFile, NameParser
31
32 The `Archive`, `Category`, `Branch`, `Version` and `Revision` classes
33 model the Arch namespace. Namespace objects can be created without the
34 corresponding archive structure being available.
35
36 Since they form a hierarchy of containers with shared methods and
37 properties in both directions, but do not have any subclass
38 relationship, they are defined using a collection of mixin classes.
39
40 The `RevisionIterable`, `VersionIterable`, `BranchIterable` and
41 `CategoryIterable` classes define the features which are inherited by
42 enclosing archive containers. Many methods in that hierarchy are
43 defined abstract (they raise UnimplementedError). They are always
44 overriden and are required to prevent legitimate PyChecker warnings.
45
46 The `ArchiveItem`, `CategoryItem`, `BranchItem` and `VersionItem`
47 classes provides features which are inherited by enclosed archive
48 items. The `NamespaceObject`, `Setupable` and `Package` classes
49 provide miscellaneous features and define aspects which do not fit
50 within the rest of the hierarchy.
51
52 :group Source Tree Classes: SourceTree, ForeignTree, ArchSourceTree,
53 LibraryTree, WorkingTree
54
55 :group Changeset and Log Classes: Changeset, Patchlog, LogMessage
56
57 :group Incremental Ouput: ChangesetCreation, ChangesetApplication,
58 Chatter, TreeChange, FileAddition, FileDeletion, FileModification,
59 FilePermissionsChange, FileRename, SymlinkModification,
60 MergeOutcome, PatchConflict
61
62 :group Archive Functions: archives, iter_archives, make_archive,
63 register_archive, get, get_patch, make_continuation
64
65 :group Source Tree Functions: init_tree, in_source_tree, tree_root
66
67 :group User Functions: default_archive, my_id, set_my_id
68
69 :group Changeset Generation Functions: changeset, delta, iter_delta
70
71 :group Pika Escaping Functions: name_escape, name_unescape
72
73 :group Revision Library Functions: register_revision_library,
74 unregister_revision_library, iter_revision_libraries, library_archives,
75 iter_library_archives
76
77 :group Incremental Output Functions: classify_chatter,
78 classify_changeset_creation, classify_changeset_application
79
80 :group Obsolete Utility Functions: filter_archive_logs, filter_revisions,
81 grep_summary, grep_summary_interactive, last_revision, map_name_id,
82 revision_which_created, revisions_merging, suspected_move, temphack
83
84 :var backend: Backend controller.
85
86 This object is used to configure the backend system: name of the
87 executable, process handling strategy and command-line logging.
88
89 :type backend: `backends.commandline.CommandLineBackend`
90 """
91
92 __all__ = [
93 'errors',
94 'pathname',
95 'compat',
96 'backends',
97
98 'util',
99 ]
100
101 from _output import *
102 from _builtin import *
103 from _escaping import *
104 from _location import *
105
123
124 _import_builtin()
125
126
127
128 del _import_builtin
129
130
131 from errors import ExecProblem
132 __all__.extend(['ExecProblem'])
133 from pathname import PathName, FileName, DirName
134 __all__.extend(['PathName', 'FileName', 'DirName'])
135