Implementing "get -l" (was: Re: CSSC)

View: New views
5 Messages — Rating Filter:   Alert me  

Implementing "get -l" (was: Re: CSSC)

by James Youngman-5 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

I'm copying my email to the bug-cssc mailing list; please copy the
mailing list when replying, since other members of the list may also
be able to help.

On Jan 5, 2008 4:43 PM, Klaus Metzger <klaus.metzger@...> wrote:

> James Youngman schrieb:
>
> > On Dec 15, 2007 2:46 PM, Klaus Metzger <klaus.metzger@...> wrote:
> >
> >> Hello James,
> >> how are you?
> >> I would like to know what the status of the get -l option is you are
> >> about to develop for the CSSC?
> >>
> >
> > I haven't worked on it.
> >
> >
> >> It would have been helpful for me already several times if I had had it.
> >>
> >
> > I understand.    You might want to mail the list too, in case anyone
> > else wants to help.
> >
> > James.
> >
> >
> Hello James,
> no. I wanted to say that I needed it already several times, but didn't
> have it.
> Do you think you will have time sooner or later to make it?
> Thanks
> Klaus
>
>

I have been able to devote very little time to this.

Reading over the materials you sent, I note that we still need answers
to these questions from February:

<< The reason that "get -l" is not implemented at in CSSC the moment is
simply that no specification exists for the format of the output and
the Unix documentation doesn't state how the -l and -lp options
interact with the other possible options to the "get" command.    For
example, what's the precise effect of "-l -e", and how does "-lp"
interact with the "-g" and "-p" options?   There are likely to be
other cases where the behaviour needs to be specified, too. >>

Also, I wrote:

<< So, if you would like to document that in sufficient detail to make it
possible to implement the feature, I'm happy to write the code
implementing the options you need.  >>

We still don't have any documentation for this, though.  (You did
provide me with part of a Tru64 Unix manual page, but obviously the
FSF cannot distribute that, we need documentation which is not copied
or derived from that information).

Meanwhile, I'm making a start on the code.  I hope you will see some
changes in the CVS tree (http://savannah.gnu.org/cvs/?group=cssc).
To finish the code changes, we need more information though.   And to
make a release containing those code changes, we need documentation.

Thanks,
James.


_______________________________________________
cssc-users mailing list
cssc-users@...
http://lists.gnu.org/mailman/listinfo/cssc-users

Re: Implementing "get -l" (was: Re: CSSC)

by James Youngman-5 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

On Jan 5, 2008 7:01 PM, James Youngman <jay@...> wrote:
> I'm copying my email to the bug-cssc mailing list; please copy the
> mailing list when replying, since other members of the list may also
> be able to help.

In pursuit of which, I have some questions.  Could you address these
in your specification?

1. How does SCCS handle an I/O error on the l-file?   Is the l-file
deleted?  What happens to the g-file?
2. What mode is the l-file created with (don't forget to take account
of the umask)?
3. How are multiline comments handled?   Do they have a tab-prefix, or not?
4. Are leading tabs in the comments handled specially?
5. What about MR numbers, flags, and included/excluded deltas?  If a
change has any of those, are they printed?  In what order?  How are
they represented?
6. What does "get -p -L" do?  How about "get -L -p"?
7. If l.foo is a broken symbolic link, does "get -l s.foo" follow it?

Thanks,
James.


_______________________________________________
cssc-users mailing list
cssc-users@...
http://lists.gnu.org/mailman/listinfo/cssc-users

Re: Implementing "get -l" (was: Re: CSSC)

by James Youngman-5 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Another question: if more than one file is gotten, what does "get -L"
do?   Does the format change?


_______________________________________________
cssc-users mailing list
cssc-users@...
http://lists.gnu.org/mailman/listinfo/cssc-users

Re: Implementing "get -l" (was: Re: CSSC)

by James Youngman-5 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

On Jan 5, 2008 8:02 PM, James Youngman <jay@...> wrote:
> In pursuit of which, I have some questions.  Could you address these
> in your specification?

I have checked a preliminary implementation into CVS.   See
http://savannah.gnu.org/cvs/?group=cssc for information on how to
build CSSC from CVS.  The code is not fully ready for release yet,
because some of the questions below remain unanswered:

> 1. How does SCCS handle an I/O error on the l-file?   Is the l-file
> deleted?  What happens to the g-file?

I still need an answer to this.

> 2. What mode is the l-file created with (don't forget to take account
> of the umask)?

I still need an answer to this.

> 3. How are multiline comments handled?   Do they have a tab-prefix, or not?
> 4. Are leading tabs in the comments handled specially?
> 5. What about MR numbers, flags, and included/excluded deltas?  If a
> change has any of those, are they printed?  In what order?  How are
> they represented?

The implementation makes a guess at these, but we still need an answer
to all of them.

> 6. What does "get -p -L" do?  How about "get -L -p"?

I believe I have resolved this (the delta summary goes to stderr in
both cases), but this could stand a little checking.

> 7. If l.foo is a broken symbolic link, does "get -l s.foo" follow it?

I still need an answer to this.

James.


_______________________________________________
cssc-users mailing list
cssc-users@...
http://lists.gnu.org/mailman/listinfo/cssc-users

Parent Message unknown Re: Implementing "get -l" (was: Re: CSSC)

by James Youngman-5 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

On Jan 7, 2008 5:12 PM, Klaus Metzger <klaus.metzger@...> wrote:

> Hello James,
>
> enclosed answers to your question 1 to 4 and 6,7 and the additional from
> your next email
>
> A. The command
>  >get -l SCCS/s.P26J000001.input
> delivers the l.P26J000001.input
>
> B. The command
>  >get -l SCCS/s.P26J000001.input

As far as I can determine, this command is identical to the previous
one, is that what you planned?   Or did you mean "-lp"?

> which Im mostly using, does not create the l file, it just prints the
> result on the screen
>
> storm_KPM> get -lp SCCS/s.P26J000001.input
> the message on the screen is
> then--------------------------------------------
> 1.7
>     1.7 08/01/07 07:58:35 butch
>                         comment with two tabs
>
>     1.6 08/01/07 07:58:16 butch
>                 comment with one tab
>
>     1.5 08/01/07 07:56:28 butch
>                         abcde
>
>     1.4 08/01/07 07:54:38 butch
>         dsjkhfkjhdsfjhdshfjhdfkjhdshfadshf d
>
>     1.3 03/11/06 14:57:21 mueller
>
>     1.2 03/11/06 14:56:49 mueller
>
>     1.1 03/11/06 14:56:16 mueller
>         date and time created 03/11/06 14:56:16 by mueller
>
> 13 lines
> end of screen--------------------------------------------------------
>
> In that case the version V1.1 to 1.3 were stored without any comment
>
> Your questions.
> 1. To simulate an I/O error on the l file I set it to unread- and unwritable
>    (# chmod 000 l.P26J000001.input)
>    Then issued the command
>
> storm_KPM> get -l SCCS/s.P26J000001.input
> the message on the screen is-------------
> 1.3
> 13 lines
> end osf message----------------------------
>
> It seems that there is no proper handling of that error wrt the l-file.
> The g-file (in this case P26J000001.input) is still created properly
>
> 2. The mode of the l-file is
> storm_KPM> ls -l P26J000001.input
> -r--r--r--   1 butch    25           904 Jan  7 07:51 P26J000001.input
>
> 3. It is not possible to insert multiple lines as comments so there is
> no need to handle it.

Multi-line comments can be added either by using a backslash
interactively, or by using

delta -y "multi
line
comment"


> 4. Leading tabs see example B. above

I think your file has become corrupted; even the tabs that should be
there seem to be missing.


> 5. I have to investigate, I will come up later
>
> 6a. Your question :Another question: if more than one file is gotten,
> what does "get -L"
> do?   Does the format change?
>
>
> storm_KPM> get -p -L SCCS/s.P26J000001.input

> 6b. get -L -p SCCS/s.P26J000001.input  : no difference to 6a
>
> 7. Im not quite sure if I understand the questions. Why should be the
> l-file a
>    broken symbolic link. It is created by the command as a file and not as a
>    link.

ln -s l.foo thisfiledoesnotexist
get -lp s.foo

Here l.foo starts off as a broken link.  The question is, does l.foo
get deleted and recreated, or is the symlink followed, creating
thisfiledoesnotexist?

> 8. more files:
> storm_KPM> get -L SCCS/s.P26J000001.input SCCS/s.P26J000000.input
[...]
> hence, it displays both outputs one after another
> please note that there are no comments in the second file
>
> The format does not change
>
>
> I hope I met your questions

Thanks; as far as I can tell, the existing CSSC implementation works
in the same way.

> Enclosed
> - the man pages from the get command (just in case I didn't send it alread)

I have read the manual pages; they are available on-line, for example.
   But they are not useful for making documentation for CSSC, as the
copyright in those files belongs to HP (I assume), not to the FSF or
you.   But thanks anyway.

James.


_______________________________________________
cssc-users mailing list
cssc-users@...
http://lists.gnu.org/mailman/listinfo/cssc-users