Ticket #40 (closed defect: wontfix)

Opened 7 years ago

Last modified 7 years ago

Can't depend on 'cvs rlog: Logging' line

Reported by: tailor23494@… Owned by: lele
Priority: major Milestone: VersionOne
Component: cvs Version: 0.9
Keywords: Cc:

Description

tailor expects cvs rlog to print a line of the form "cvs rlog: Logging dirname" each time it enters a new directory, before printing the log for the files in that directory. Unfortunately, cvs rlog only prints these messages when checking out an entire directory; it does not print them when checking out a module whose member files are defined explicitly. That is, if in CVSROOT/modules you define modulename as

modulename dirname file1 file2

then "cvs rlog modulename" does not print out any "Logging" messages.

This looks quite complicated to solve. I think one would have to use the "RCS file:" line to find each file's location in the repository, and parse CVSROOT/modules to reconstruct the mapping from repository directory names to working copy directory names.

Change History

comment:1 Changed 7 years ago by tailor23494@…

A better idea: cvs log, unlike cvs rlog, prints out a "Working file:" line for each file. I think the right solution would to be to do cvs checkout followed by cvs log, rather than cvs rlog followed by cvs checkout, and use this "Working file:" line to determine the entry names.

comment:2 Changed 7 years ago by lele

  • Component changed from tailor to cvs

Uhm, I don't think it's possible to do what you suggest, since tailor needs the log in advance, before fetching the actual changes, because it wants to get and recommit a whole changeset at a time.

comment:3 Changed 7 years ago by lele

  • Status changed from new to closed
  • Resolution set to wontfix

Handling of CVS module is weak for a reason: CVS sucks. So, without a bright idea on how to handle them, the parser needs those lines, sorry.

Note: See TracTickets for help on using tickets.