Index: vcpx/repository/darcs/__init__.py
===================================================================
--- vcpx/repository/darcs/__init__.py	(revision 1624)
+++ vcpx/repository/darcs/__init__.py	(revision 1633)
@@ -30,8 +30,5 @@
         cget = project.config.get
         self.EXECUTABLE = cget(self.name, 'darcs-command', 'darcs')
-        cmd = self.command('--version')
-        version = ExternalCommand(command=cmd)
-        self.darcs_version = version.execute(stdout=PIPE)[0].read().strip()
-        self.log.debug('Using %s, version %s', self.EXECUTABLE, self.darcs_version)
+        self._darcs_version = None
         init_options = cget(self.name, 'init-options', '')
         if init_options:
@@ -69,4 +66,13 @@
                                           "'\xfc': '&#252;',"
                                           "}"))
+
+    @property
+    def darcs_version(self):
+        if self._darcs_version is None:
+            cmd = self.command('--version')
+            version = ExternalCommand(command=cmd)
+            self._darcs_version = version.execute(stdout=PIPE)[0].read().strip()
+            self.log.debug('Using %s, version %s', self.EXECUTABLE, self._darcs_version)
+        return self._darcs_version
 
     def command(self, *args, **kwargs):
Index: vcpx/changes.py
===================================================================
--- vcpx/changes.py	(revision 1630)
+++ vcpx/changes.py	(revision 1634)
@@ -44,5 +44,14 @@
 
     def __str__(self):
-        s = self.name + '(' + self.action_kind
+        entry_kind = []
+        if self.is_directory:
+            entry_kind.append('DIR')
+        if self.is_symlink:
+            entry_kind.append('SYMLINK')
+        if entry_kind:
+            kind = '[' + ','.join(entry_kind) + ']'
+        else:
+            kind = ''
+        s = self.name + kind + '(' + self.action_kind
         if self.action_kind == self.ADDED:
             if self.new_revision:
@@ -58,8 +67,4 @@
         else:
             s += '??'
-        if self.is_directory:
-            s += ', DIR'
-        if self.is_symlink:
-            s += ', SLNK'
         s += ')'
         if isinstance(s, unicode):
