<html>
  <head>
    <meta content="text/html; charset=ISO-8859-1"
      http-equiv="Content-Type">
  </head>
  <body bgcolor="#FFFFFF" text="#000000">
    We are one (BIG) step further :-)<br>
    <br>
    Following your suggestion (thanks!), I was able to run
    strip_versions. Zope 2.13 sucessfully started with the converted
    Data.fs, but now I get a different error (below) when trying to
    access most subfolders of the site. It seems there are more syntax
    changes that need to be converted? Are there other scripts to do
    this?<br>
    <br>
    Thanks for all your help,<br>
    Frank<br>
    <br>
    <br>
    <h2>Zope Error</h2>
    <p>Zope has encountered an error while publishing this resource.</p>
    <p> <strong>Error Type: TypeError</strong><br>
      <strong>Error Value: ('object.__new__(Args) is not safe, use
        Persistence.Persistent.__new__()', <class
          shared.dc.zrdb.aqueduct.args="">, ())</class></strong><br>
    </p>
    <p> </p>
    <p>Traceback (innermost last):</p>
    <ul>
      <li> Module ZPublisher.Publish, line 126, in publish</li>
      <li> Module ZPublisher.mapply, line 77, in mapply</li>
      <li> Module ZPublisher.Publish, line 46, in call_object</li>
      <li> Module Shared.DC.Scripts.Bindings, line 322, in __call__</li>
      <li> Module Shared.DC.Scripts.Bindings, line 359, in _bindAndExec</li>
      <li> Module App.special_dtml, line 185, in _exec</li>
      <li> Module DocumentTemplate.DT_Let, line 77, in render</li>
      <li> Module DocumentTemplate.DT_In, line 647, in renderwob</li>
      <li> Module DocumentTemplate.DT_In, line 772, in sort_sequence</li>
      <li> Module ZODB.Connection, line 860, in setstate</li>
      <li> Module ZODB.Connection, line 914, in _setstate</li>
      <li> Module ZODB.serialize, line 612, in setGhostState</li>
      <li> Module ZODB.serialize, line 605, in getState</li>
      <li> Module ZODB.broken, line 106, in __new__</li>
    </ul>
    <p>TypeError: ('object.__new__(Args) is not safe, use
      Persistence.Persistent.__new__()', &lt;class
      'Shared.DC.ZRDB.Aqueduct.Args'&gt;, ())
    </p>
    &nbsp;<br>
    On 10/06/2011 09:15 PM, Laurence Rowe wrote:
    <blockquote
cite="mid:CAOycyLTqaCjcpVBmM1GRf=GpN8s+6JWvUJiG+jSpQ=W9kfKZ9w@mail.gmail.com"
      type="cite">
      <pre wrap="">Perhaps you can just create a simple buildout.cfg for the version of
ZODB you need:

[buildout]
parts = scripts
versions = versions

[versions]
ZODB3 = 3.8.6

[scripts]
recipe = zc.recipe.egg
eggs = ZODB3
interpreter = py

Grab bootstrap.py from
<a class="moz-txt-link-freetext" href="http://svn.zope.org/*checkout*/zc.buildout/trunk/bootstrap/bootstrap.py">http://svn.zope.org/*checkout*/zc.buildout/trunk/bootstrap/bootstrap.py</a>
then run python bootstrap.py followed by bin/buildout. That should
give you bin/strip_versions which you can run.

Laurence


On 6 October 2011 19:22, Frank Kauff <a class="moz-txt-link-rfc2396E" href="mailto:fkauff@biologie.uni-kl.de">&lt;fkauff@biologie.uni-kl.de&gt;</a> wrote:
</pre>
      <blockquote type="cite">
        <pre wrap="">Hi Laurence,

Please note that there are two errrors: The error "versions not supported"
comes &nbsp;from Zope 2.13, but the other error appears when running from 2.10,
with ZODB 3.7:

[fkauff@aftol2 var]$ /opt/Zope-2.10/bin/python
Python 2.4.3 (#1, Sep 21 2011, 19:55:41)
[GCC 4.1.2 20080704 (Red Hat 4.1.2-51)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
</pre>
        <blockquote type="cite">
          <blockquote type="cite">
            <blockquote type="cite">
              <pre wrap="">import ZODB
ZODB.__version__
</pre>
            </blockquote>
          </blockquote>
        </blockquote>
        <pre wrap="">'3.7.1'
</pre>
        <blockquote type="cite">
          <blockquote type="cite">
            <blockquote type="cite">
              <pre wrap="">
</pre>
            </blockquote>
          </blockquote>
        </blockquote>
        <pre wrap="">
[fkauff@aftol2 var]$ /opt/Zope-2.10/bin/python ../strip_versions.py Data.fs
Data.fs.stripped
No handlers could be found for logger "ZODB.FileStorage"
Traceback (most recent call last):
&nbsp;File "../strip_versions.py", line 115, in ?
&nbsp; &nbsp;main()
&nbsp;File "../strip_versions.py", line 107, in main
&nbsp; &nbsp;ZODB.BaseStorage.copy(it, output_storage)
AttributeError: 'module' object has no attribute 'copy'


I installed Zope 2.11 from old.zope.org, but it still comes with ZODB 3.7

[fkauff@aftol2 ~]$ /opt/Zope-2.11/bin/python
Python 2.4.6 (#1, Oct &nbsp;6 2011, 09:13:36)
[GCC 4.1.2 20080704 (Red Hat 4.1.2-51)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
</pre>
        <blockquote type="cite">
          <blockquote type="cite">
            <blockquote type="cite">
              <pre wrap="">import ZODB
ZODB.__version__
</pre>
            </blockquote>
          </blockquote>
        </blockquote>
        <pre wrap="">'3.7.0b3'
</pre>
        <blockquote type="cite">
          <blockquote type="cite">
            <blockquote type="cite">
              <pre wrap="">ZODB.__path__
</pre>
            </blockquote>
          </blockquote>
        </blockquote>
        <pre wrap="">['/opt/Zope-2.11/lib/python/ZODB']


So the main question seems to be - which Zope version is old enough to be
able to read my Data.fs but recent enough to run the conversion script? Can
i get a 2.11 version with ZODB 3.8 from somewhere?

Thanks,
Frank








On 10/06/2011 05:54 PM, Laurence Rowe wrote:
</pre>
        <blockquote type="cite">
          <pre wrap="">
On 6 October 2011 14:40, Frank Kauff<a class="moz-txt-link-rfc2396E" href="mailto:fkauff@biologie.uni-kl.de">&lt;fkauff@biologie.uni-kl.de&gt;</a> &nbsp;wrote:
</pre>
          <blockquote type="cite">
            <pre wrap="">
On 10/06/2011 03:21 PM, Laurence Rowe wrote:
</pre>
            <blockquote type="cite">
              <pre wrap="">
You probably need to run it using ZODB 3.8 (i.e. with your Zope 2.10
instance.)
</pre>
            </blockquote>
            <pre wrap="">
I think that's what &nbsp;did:

/opt/Zope-2.10/bin/python ../strip_versions.py Data.fs Data.fs.stripped

which gave the first error below

Or should I run it differently?
</pre>
          </blockquote>
          <pre wrap="">
Zope 2.10 shipped with ZODB 3.7.x and only worked with Python 2.4.
Your error message is showing a problem in ZODB 3.10.3 for python 2.6.
I think you're running it in your Zope 2.13 buildout.

The strip_versions.py script needs to run with a ZODB released before
version support was removed. The script shipped with ZODB 3.8.x but I
expect it will also work with 3.7.x.

Laurence

</pre>
        </blockquote>
      </blockquote>
    </blockquote>
    <br>
  </body>
</html>