Details
-
Task
-
Status: Open
-
Major
-
Resolution: Unresolved
-
None
-
None
Description
(Summarized from a dev@ post [1], which see for details, including specific command-lines and outputs, and proposed fixes)
[[[
1. The output for a single file target differs between --depth=files and
--depth=infinity.
2. The output for a single file target has a different schema than the
output for two files targets.
3. When MULTIPLE_TARGETS is true and there are multiple items to show,
the final tab-split item also contains the name of the file.
4. When MULTIPLE_TARGETS is true and there are multiple items to show,
the name of the target appears multiple times in the output.
5. repos-size, when used on local file targets, outputs nothing
with no error. It should print the detranslated size.
6. repos-size, when used on local directory targets at depth empty,
outputs nothing with no error. Not even an empty string followed by a
newline; it inhibits the line entirely. [This makes it difficult to
extend «svn info --show-item=repos-size A/» either to multiple items or
to multiple targets. For example, it breaks the invariant that removing
one item from «svn info --show-item=foo,bar – lorem ipsum» would not
change the number of lines in the output.]
7. repos-size, when used on local directory targets with depth infinity,
doesn't recurse.
8. «--show-item=kind,repos-size,kind» doesn't behave correctly: it
prints the kind just once, prints a trailing tab after the filename,
and doesn't print a final newline.
9. MULTIPLE_TARGETS mode suppresses the "can't show in-repository size
of working copy file '%s'" error. I can't imagine why. If it's fine
to print nothing for a wc file when there are other targets, then print
nothing when it's the only target, too; and if it's an error, then it
should be an error whatever the other targets are.
]]]
The post was written at a time that trunk supported --show-item=foo,bar. That support had been added [2] shortly before the thread [1] started, never appeared in a release before or after, and by now has been reverted. The revert resolves points #3 and #4, but creates a new point:
10. 'info --show-item=' should support multiple comma-separated arguments.