cvs-dev
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Cvs-dev] 'cvs pserver' returning "Patched" instead of "Update-existing"


From: Assaf Gordon
Subject: [Cvs-dev] 'cvs pserver' returning "Patched" instead of "Update-existing" ?
Date: Mon, 5 Dec 2016 09:24:17 -0500

Hello all,

Perhaps you could advise regarding the an issue we're experiencing on Savannah, 
with the latest cvs (post-1.12.13):

It seems that a cvs binary compiled from the latest sources returns a different 
response when updating a file, "Patched" instead of "Update-existing".

Since my CVS understanding is limited, it is quite likely we've simply haven't 
configured it correctly (or missing some command-line option?).

The only other similar case I could find online was this, an unresolved ticket 
from 2008:
  https://bugs.eclipse.org/bugs/show_bug.cgi?id=200914
  "[CVS]Error: Unknown response received from cvs server: Patched"


Form our old (=current) server, doing a "cvs checkout" to update an existing 
cvs repository uses the "Update-existing" command, and sends the entire file.
With our new server (cvs compiled from source), doing the same "cvs checkout" 
(same client binary) returns a "Patched" command, with only a diff of the 
changed file - but the client 'cvs' doesn't know what to do with the 'diff', 
and the file is not updated.

It can be reduced to this:

   # checkout from old server:
   # start with 'pretest' directory that is one commit BEHIND the old server
   export CVS_CLIENT_LOG=old-vcs.txt
   cvs -t -d :pserver:address@hidden:/webcvs/pretest checkout -P pretest

   # checkout from new server:
   # start with 'pretest' directory that is one commit BEHIND the new server
   export CVS_CLIENT_LOG=new-vcs.txt
   cvs -t -d :pserver:address@hidden:/webcvs/pretest checkout -P pretest

And the difference is:

    --- old-vcs.txt.out     2016-12-04 22:19:58.000000000 -0500
    +++ new-vcs.txt.out     2016-12-04 22:20:30.000000000 -0500
    @@ -1,4 +1,4 @@
    -Valid-requests Root Valid-responses valid-requests Command-prep Referrer 
Repository [...]
    +Valid-requests Root Valid-responses valid-requests Command-prep Referrer 
Repository [...]
    ok
    ok
    Module-expansion pretest
   @@ -29,374 +29,31 @@
    MT fname pretest/index.html
    MT newline
    MT -updated
   -Update-existing pretest/
   +Checksum 22f85de9c44aadebbf39ceb83322bae9
   +Patched pretest/
   [....]

From the old server, the entire content of the updated 'pretest/index.html' 
follows.
From the new server, only a diff follows.

When using the new server, a temporary file is created, containing the diff, 
but it is not used or applied:

    $ cat pretest/.new.9LKyAi
    *** CVS/,,index.html-1      Sun Dec  4 22:11:41 2016
    --- CVS/,,index.html-2      Sun Dec  4 22:11:41 2016
    ***************
    *** 1,7 ****
      <!DOCTYPE html>
      <html>
      <head>
    ! <!-- update test 3 -->
      <meta charset="utf-8">
      <meta name="generator" content="pandoc">
      <meta name="viewport" content="width=device-width, initial-scale=1.0, 
user-scalable=yes">
    --- 1,7 ----
      <!DOCTYPE html>
      <html>
      <head>
    ! <!-- update test 4 -->
      <meta charset="utf-8">
      <meta name="generator" content="pandoc">
      <meta name="viewport" content="width=device-width, initial-scale=1.0, 
user-scalable=yes">


If this rings any bells, I would welcome any suggestions on how to restore the 
old behavior.

Thanks!
 - assaf





reply via email to

[Prev in Thread] Current Thread [Next in Thread]