To copy data from Zope 2.4.4 to Zope 2.5.1, I decided against moving Data.fs, and instead relied on the following procedure which somehow brought much pain as it created "invisible" Python Scripts: - Create a folder in 2.4.4. called 'export'. - Copy almost all content from root to 'export' (except acl_users, Control_Panel, QuickStart) - Export the 'export' folder to a file 'export.zexp' - Export my ZClasses to a .zexp file - Shutdown Zope 2.4.4 - Install and run Zope 2.5.1 - Import the 'export.zexp' - Move files from the 'export' folder to root. - Import the ZClasses. - Copy external methods from Zope 2.4.4 Extensions folder to Zope 2.5.1 Extensions folder This worked OK on my local setup (heavily patched RedHat 7.1, Python 2.1.3 compiled from sources), and it APPEARED to work well on the production server (some sort of Slackware, Python 2.1.3 compiled from sources). All ZODB content appeared to be OK, but calling any of many Python Scripts from a DTML method ended in an error "Global name <script_name> not found". Of course <script_name> was right there, and it was possible to access it through direct URL (http://myserver/<script_name>), but when it was called from a DTML method it always failed with "Global name <script_name> not found". I tried the following: - rename <script_name> to a different name, and use that change in the calling DTM method. Problem persists. - delete <script_name>, and push it from local server using ZSyncer. Problem persists. - delete <script_name>, create an empty Python Script with ZMI, and copy&paste source from local Zope ZMI. Problem disappears! The above was true for at least five Python Scripts that have exhibited this problem. -- Milos Prudek