First of all, I find it a bit weird that there is no easy way to recover
the real node kind (not the one in subversion but in the system's FS)
from svn_client_status6(). Although it is present in the WC API
(svn_wc_status3_t->actual_kind), it isn't in the client equivalent. There
is only a hacky way to
use svn_client_status_t->backwards_compatibility_baton which is a void*
that actually describes a svn_wc_status3_t so one could use the field from
it (if they really know what they're doing).

subversion/include/svn_wc.h:svn_wc_status3_t:
[[[
  /** The actual kind of the node in the working copy. May differ from
   * @a kind on obstructions, deletes, etc. #svn_node_unknown if
unavailable.
   *
   * @since New in 1.9 */
  svn_node_kind_t actual_kind;
]]]

I personally don't see a real reason to not have it so if nobody objects
I'd just add it there.

There is also an idea that I think we might consider to include last
modified time (actual_mtime) into the status structure of both WC and
client. We already have this information as an svn_io_dirent2_t when the
status is assembled in libsvn_wc/status.c so it doesn't cost us anything to
do and could potentially give users more idea about a node.

Thoughts?

-- 
Timofei Zhakov

Reply via email to