Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 382977 - Page template macros not working after update to net-zope/zope-2.13.9
Summary: Page template macros not working after update to net-zope/zope-2.13.9
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: New packages (show other bugs)
Hardware: All All
: Normal critical (vote)
Assignee: Arfrever Frehtes Taifersar Arahesis
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2011-09-14 16:57 UTC by Erich Seifert
Modified: 2011-09-19 20:39 UTC (History)
0 users

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Erich Seifert 2011-09-14 16:57:08 UTC
After updating from net-zope/zope-2.13.7 (official portage tree) to net-zope/zope-2.13.9 (progress overlay) as suggested in the official net-zope/zope-2.13.9 stub ebuild Zope's page templating system doesn't work any more.
Zope's errors show that the macros attribute isn't accesible. This causes almost all dynamic pages to fail.
Going back to net-zope/zope-2.13.7 solves the issue.

Reproducible: Always

Steps to Reproduce:
1. Add progress overlay as described in net-zope/zope-2.13.9 stub ebuild
2. Install net-zope/zope-2.13.9 and dependencies
3. Ppen a zope page template that uses a METAL macro like metal:use-macro="here/standard_template.pt/macros/page"
Actual Results:  
A Zope error message appears on the rendered page:

Zope Error
Zope has encountered an error while publishing this resource.
Error Type: NotFound
Error Value: macros
...


Expected Results:  
The page template should use the specified "page" macro from "here/standard_template.pt" and render a valid (X)HTML page.

Normal page without macros render correctly.


Here's the stack trace from Zope's event.log:

2011-09-14T18:00:00 ERROR root Exception while rendering an error message
Traceback (most recent call last):
  File "/usr/lib64/zope-2.13/lib/python-2.7/OFS/SimpleItem.py", line 241, in raise_standardErrorMessage
    v = s(**kwargs)
  File "/usr/lib64/zope-2.13/lib/python-2.7/Shared/DC/Scripts/Bindings.py", line 322, in __call__
    return self._bindAndExec(args, kw, None)
  File "/usr/lib64/zope-2.13/lib/python-2.7/Shared/DC/Scripts/Bindings.py", line 359, in _bindAndExec
    return self._exec(bound_data, args, kw)
  File "/usr/lib64/zope-2.13/lib/python-2.7/Products/PageTemplates/ZopePageTemplate.py", line 334, in _exec
    result = self.pt_render(extra_context=bound_names)
  File "/usr/lib64/zope-2.13/lib/python-2.7/Products/PageTemplates/ZopePageTemplate.py", line 431, in pt_render
    result = PageTemplate.pt_render(self, source, extra_context)
  File "/usr/lib64/zope-2.13/lib/python-2.7/Products/PageTemplates/PageTemplate.py", line 79, in pt_render
    showtal=showtal)
  File "/usr/lib64/python2.7/site-packages/zope/pagetemplate/pagetemplate.py", line 131, in pt_render
  File "/usr/lib64/python2.7/site-packages/zope/pagetemplate/pagetemplate.py", line 240, in __call__
  File "/usr/lib64/python2.7/site-packages/zope/tal/talinterpreter.py", line 266, in __call__
  File "/usr/lib64/python2.7/site-packages/zope/tal/talinterpreter.py", line 338, in interpret
    s = s[:76] + "...\n"
  File "/usr/lib64/python2.7/site-packages/zope/tal/talinterpreter.py", line 862, in do_useMacro
    def do_useMacro(self, (macroName, macroExpr, compiledSlots, block),
  File "/usr/lib64/python2.7/site-packages/zope/tales/tales.py", line 696, in evaluate
    return expression(self)
  File "/usr/lib64/python2.7/site-packages/zope/tales/expressions.py", line 217, in __call__
    return self._eval(econtext)
  File "/usr/lib64/zope-2.13/lib/python-2.7/Products/PageTemplates/Expressions.py", line 147, in _eval
    ob = self._subexprs[-1](econtext)
  File "/usr/lib64/python2.7/site-packages/zope/tales/expressions.py", line 124, in _eval
    ob = self._traverser(ob, element, econtext)
  File "/usr/lib64/zope-2.13/lib/python-2.7/Products/PageTemplates/Expressions.py", line 74, in boboAwareZopeTraverse
    object = object.restrictedTraverse(name)
  File "/usr/lib64/zope-2.13/lib/python-2.7/OFS/Traversable.py", line 316, in restrictedTraverse
  File "/usr/lib64/zope-2.13/lib/python-2.7/OFS/Traversable.py", line 299, in unrestrictedTraverse
NotFound: macros


Here's a list of net-zope/* packages installed as listed by `qlist -CIUv net-zope/`:

net-zope/accesscontrol-2.13.4 (python_abis_2.7)
net-zope/acquisition-2.13.8 (python_abis_2.7)
net-zope/btreefolder2-2.13.3 (python_abis_2.7)
net-zope/datetime-2.12.6 (python_abis_2.7)
net-zope/documenttemplate-2.13.1 (python_abis_2.7)
net-zope/extensionclass-2.13.2 (python_abis_2.7)
net-zope/externalmethod-2.13.0 (python_abis_2.7)
net-zope/initgroups-2.13.0 (python_abis_2.7)
net-zope/mailhost-2.13.1 (python_abis_2.7)
net-zope/mimetools-2.13.0 (python_abis_2.7)
net-zope/missing-2.13.1 (python_abis_2.7)
net-zope/multimapping-2.13.0 (python_abis_2.7)
net-zope/namespaces-zc-0 (python_abis_2.7 python_abis_3.2 zc)
net-zope/namespaces-zope-0 (Products Shared Shared.DC five python_abis_2.7 python_abis_3.2 zope zope.app)
net-zope/ofsp-2.13.2 (python_abis_2.7)
net-zope/persistence-2.13.2 (python_abis_2.7)
net-zope/pythonscripts-2.13.0 (python_abis_2.7)
net-zope/record-2.13.0 (python_abis_2.7)
net-zope/standardcachemanagers-2.13.0 (python_abis_2.7)
net-zope/tempstorage-2.12.1 (python_abis_2.7)
net-zope/transaction-1.1.1 (python_abis_2.7)
net-zope/zc-lockfile-1.0.0 (python_abis_2.7 python_abis_3.2)
net-zope/zcatalog-2.13.20 (python_abis_2.7)
net-zope/zconfig-2.9.0 (python_abis_2.7)
net-zope/zctextindex-2.13.3 (python_abis_2.7)
net-zope/zdaemon-2.0.4 (python_abis_2.7)
net-zope/zexceptions-2.13.0 (python_abis_2.7)
net-zope/zlog-2.11.1 (python_abis_2.7)
net-zope/zodb-3.10.3 (python_abis_2.7)
net-zope/zope-2.13.9 (python_abis_2.7)
net-zope/zope-annotation-3.5.0 (python_abis_2.7)
net-zope/zope-app-appsetup-3.16.0 (python_abis_2.7)
net-zope/zope-app-debug-3.4.1 (python_abis_2.7)
net-zope/zope-app-dependable-3.5.1 (python_abis_2.7)
net-zope/zope-app-form-4.0.2 (python_abis_2.7)
net-zope/zope-app-publication-3.13.2 (python_abis_2.7)
net-zope/zope-app-testing-3.9.0 (python_abis_2.7)
net-zope/zope-authentication-3.7.1 (python_abis_2.7)
net-zope/zope-broken-3.6.0 (python_abis_2.7)
net-zope/zope-browser-1.3 (python_abis_2.7 python_abis_3.2)
net-zope/zope-browsermenu-3.9.1 (python_abis_2.7)
net-zope/zope-browserpage-3.12.2 (python_abis_2.7)
net-zope/zope-browserresource-3.12.0 (python_abis_2.7)
net-zope/zope-component-3.10.0 (python_abis_2.7)
net-zope/zope-configuration-3.7.4 (python_abis_2.7)
net-zope/zope-container-3.12.0 (python_abis_2.7)
net-zope/zope-contentprovider-3.7.2 (python_abis_2.7)
net-zope/zope-contenttype-3.5.5 (python_abis_2.7)
net-zope/zope-copy-3.5.0 (python_abis_2.7)
net-zope/zope-datetime-3.4.0 (python_abis_2.7)
net-zope/zope-deferredimport-3.5.3 (python_abis_2.7)
net-zope/zope-dottedname-3.4.6 (python_abis_2.7 python_abis_3.2)
net-zope/zope-error-3.7.2 (python_abis_2.7)
net-zope/zope-event-3.5.1 (python_abis_2.7 python_abis_3.2)
net-zope/zope-exceptions-3.6.1 (python_abis_2.7 python_abis_3.2)
net-zope/zope-filerepresentation-3.6.0 (python_abis_2.7)
net-zope/zope-fixers-1.0 (python_abis_3.2)
net-zope/zope-formlib-4.0.6 (python_abis_2.7)
net-zope/zope-hookable-3.4.1 (python_abis_2.7)
net-zope/zope-i18n-3.7.4 (python_abis_2.7)
net-zope/zope-i18nmessageid-3.6.1 (python_abis_2.7 python_abis_3.2)
net-zope/zope-interface-3.7.0 (python_abis_2.7 python_abis_3.2)
net-zope/zope-lifecycleevent-3.7.0 (python_abis_2.7)
net-zope/zope-location-3.9.1 (python_abis_2.7)
net-zope/zope-minmax-1.1.2 (python_abis_2.7)
net-zope/zope-pagetemplate-3.6.1 (python_abis_2.7)
net-zope/zope-password-3.6.1 (python_abis_2.7)
net-zope/zope-processlifetime-1.0 (python_abis_2.7)
net-zope/zope-proxy-3.6.1 (python_abis_2.7)
net-zope/zope-ptresource-3.9.0 (python_abis_2.7)
net-zope/zope-publisher-3.12.6 (python_abis_2.7)
net-zope/zope-schema-3.8.0 (python_abis_2.7)
net-zope/zope-security-3.8.2 (python_abis_2.7)
net-zope/zope-sendmail-3.7.4 (python_abis_2.7)
net-zope/zope-sequencesort-3.4.0 (python_abis_2.7)
net-zope/zope-session-3.9.5 (python_abis_2.7)
net-zope/zope-site-3.9.2 (python_abis_2.7)
net-zope/zope-size-3.4.1 (python_abis_2.7)
net-zope/zope-structuredtext-3.5.1 (python_abis_2.7)
net-zope/zope-tal-3.6.0 (python_abis_2.7)
net-zope/zope-tales-3.5.1 (python_abis_2.7)
net-zope/zope-testbrowser-4.0.2 (python_abis_2.7)
net-zope/zope-testing-3.10.2 (python_abis_2.7)
net-zope/zope-traversing-3.14.0 (python_abis_2.7)
net-zope/zope-viewlet-3.7.2 (python_abis_2.7)
net-zope/zopeundo-2.12.0 (python_abis_2.7)
net-zope/zsqlmethods-2.13.4 (python_abis_2.7)


And finally the output of emerge --info net-zope/zope:

Portage 2.1.10.11 (default/linux/amd64/10.0/server, gcc-4.4.5, glibc-2.12.2-r0, 3.0.4-gentoo x86_64)
=================================================================
                        System Settings
=================================================================
System uname: Linux-3.0.4-gentoo-x86_64-AMD_Athlon-tm-_64_Processor_3500+-with-gentoo-2.0.3
Timestamp of tree: Wed, 14 Sep 2011 01:00:02 +0000
distcc 3.1 x86_64-pc-linux-gnu [enabled]
ccache version 2.4 [disabled]
app-shells/bash:          4.1_p9
dev-lang/python:          2.7.3_pre20110911::progress, 3.1.3-r1, 3.2.3_pre20110911::progress
dev-util/ccache:          2.4-r9
dev-util/cmake:           2.8.4-r1
dev-util/pkgconfig:       0.26
sys-apps/baselayout:      2.0.3
sys-apps/openrc:          0.9.3-r1
sys-apps/sandbox:         2.4
sys-devel/autoconf:       2.68
sys-devel/automake:       1.11.1
sys-devel/binutils:       2.21.1-r1
sys-devel/gcc:            4.4.5
sys-devel/gcc-config:     1.4.1-r1
sys-devel/libtool:        2.4-r1
sys-devel/make:           3.82-r1
sys-kernel/linux-headers: 2.6.36.1 (virtual/os-headers)
sys-libs/glibc:           2.12.2
Repositories: gentoo progress x-portage
ACCEPT_KEYWORDS="amd64"
ACCEPT_LICENSE="* -@EULA"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-O2 -march=athlon64 -fomit-frame-pointer -pipe"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/lib64/fax /var/bind /var/spool/fax/etc"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo"
CXXFLAGS="-O2 -march=athlon64 -fomit-frame-pointer -pipe"
DISTDIR="/usr/portage/distfiles"
FEATURES="assume-digests binpkg-logs distcc distlocks ebuild-locks fixlafiles fixpackages metadata-transfer news parallel-fetch protect-owned sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch"
FFLAGS=""
GENTOO_MIRRORS="ftp://ftp.uni-erlangen.de/pub/mirrors/gentoo http://ftp.uni-erlangen.de/pub/mirrors/gentoo ftp://ftp-stud.hs-esslingen.de/pub/Mirrors/gentoo/ rsync://ftp-stud.hs-esslingen.de/gentoo/ http://ftp-stud.hs-esslingen.de/pub/Mirrors/gentoo/"
LANG="de_DE.utf8"
LC_ALL="de_DE.utf8"
LDFLAGS="-Wl,-O1 -Wl,--as-needed"
LINGUAS="de"
MAKEOPTS="-j11"
PKGDIR="/usr/portage/packages"
PORTAGE_CONFIGROOT="/"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/var/lib/layman/progress /usr/local/portage"
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="3dnow 3dnowext acl acpi alsa amd64 avahi berkdb bri bzip2 caps cli cracklib crypt cups cxx dbus dri expat fastcgi fortran gdbm iconv idn imap ipv6 jpeg ldap libclamav logrotate mmx mmxext modules mudflap multilib ncurses nfs nls nptl nptlonly oav ogg oggvorbis openmp pam pcre png pppd readline samba session snmp sse sse2 ssl sysfs tcpd threads tiff truetype unicode usb xml xorg zeroconf zlib" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mmap_emul mulaw multi null plug rate route share shm softvol" APACHE2_MODULES="actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache cgi cgid dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" CALLIGRA_FEATURES="kexi words flow plan stage tables krita karbon braindump" CAMERAS="ptp2" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf superstar2 timing tsip tripmate tnt ubx" INPUT_DEVICES="keyboard mouse evdev" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="de" PHP_TARGETS="php5-3" RUBY_TARGETS="ruby18" USERLAND="GNU" VIDEO_CARDS="fbdev glint intel mach64 mga neomagic nouveau nv r128 radeon savage sis tdfx trident vesa via vmware dummy v4l" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipset ipp2p iface geoip fuzzy condition tee tarpit sysrq steal rawnat logmark ipmark dhcpmac delude chaos account"
Unset:  CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS

=================================================================
                        Package Settings
=================================================================

net-zope/zope-2.13.9 was built with the following:
USE="(multilib) -doc" PYTHON_ABIS="2.7 -2.6 -2.7-pypy-1.5 -2.7-pypy-1.6"
Comment 1 Erich Seifert 2011-09-15 16:02:16 UTC
An issue related to macro traversal was fixed in Zope 2.12.4. Maybe it's related:
https://mail.zope.org/pipermail/zope-checkins/2010-March/034163.html
Comment 2 Arfrever Frehtes Taifersar Arahesis 2011-09-17 00:15:46 UTC
There were 33 commits on 2.13 branch between 2.13.7 and 2.13.9:
r121623
r121735
r121768
r121833
r121895
r121900
r121901
r121918
r121929
r122021
r122026
r122051
r122161
r122167
r122247
r122248
r122249
r122279
r122286
r122338
r122386
r122413
r122419
r122429
r122433
r122436
r122437
r122634
r122635
r122637
r122642
r122651
r122652

2.13.7 tag was created from r121621.
2.13.8 tag was created from r122021.
2.13.9 tag was created from r122652.

I have added net-zope/zope-2.13.9999, which downloads sources from upstream repository. Please add '=net-zope/zope-2.13.9999 **' to /etc/portage/package.keywords and try find revision, which has introduced this bug.

Example:
ESVN_REVISION="122021" emerge -1 =net-zope/zope-2.13.9999
If this bug still occurs, then try an older revision. Otherwise try a newer revision.
Comment 3 Erich Seifert 2011-09-18 17:23:55 UTC
Thanks for the 2.13.9999 ebuild. It seems the issue is not related to the net-zope/zope ebuild itself, but is maybe caused by some kind of dependency or configuration problem. I tried going backwards using the the revisions you mentioned for 2.13.9, 2.13.8, and 2.13.7:

ESVN_REVISION="122652" emerge -1 =net-zope/zope-2.13.9999
ESVN_REVISION="122021" emerge -1 =net-zope/zope-2.13.9999
ESVN_REVISION="121621" emerge -1 =net-zope/zope-2.13.9999

The error remained the same for each revision. I didn't try all revisions anymore after that. Even the 2.13.7 revision (121621) doesn't work like the one that used to be in the main portage tree.
Comment 4 Arfrever Frehtes Taifersar Arahesis 2011-09-18 17:32:23 UTC
If you unmask net-zope/zope-2.13.7 from the main tree and install it:
emerge -1O =net-zope/zope-2.13.7::gentoo
Then the problem still remains?

Please also try older versions of net-zope/zope-pagetemplate and net-zope/zope-tal (after unmasking them):
emerge -1 =net-zope/zope-pagetemplate-3.5.2
emerge -1 =net-zope/zope-tal-3.5.2
Comment 5 Arfrever Frehtes Taifersar Arahesis 2011-09-18 17:36:05 UTC
(In reply to comment #4)
> emerge -1 =net-zope/zope-pagetemplate-3.5.2
> emerge -1 =net-zope/zope-tal-3.5.2

emerge -1O =net-zope/zope-pagetemplate-3.5.2
emerge -1O =net-zope/zope-tal-3.5.2
Comment 6 Erich Seifert 2011-09-19 12:40:09 UTC
Thank you very much for your efforts. Your last suggestions helped to get a  working Zope 2.13.7 again.
I unmasked net-zope/zope-2.13.7 and installed the version from the main tree with
`emerge -1O =net-zope/zope-2.13.7::gentoo`, but the Zope instance showed the same error.
Finally, going back to net-zope/zope-pagetemplate-3.5.2 did the trick and I don't see errors anymore with Zope 2.13.7. So, it's probably an issue with net-zope/zope-pagetemplate-3.6.1.
Comment 7 Arfrever Frehtes Taifersar Arahesis 2011-09-19 16:06:15 UTC
I have restored net-zope/zope-pagetemplate-3.5.2 in Progress Overlay and adjusted dependencies in net-zope/zope.

Please test the following combination to ensure that it works:
=net-zope/zope-2.13.9::progress
=net-zope/zope-pagetemplate-3.5.2::progress
Comment 8 Erich Seifert 2011-09-19 16:30:37 UTC
(In reply to comment #7)
> Please test the following combination to ensure that it works:
> =net-zope/zope-2.13.9::progress
> =net-zope/zope-pagetemplate-3.5.2::progress

Yes, this combination works fine here. Thank you very much.
Comment 9 Arfrever Frehtes Taifersar Arahesis 2011-09-19 16:38:57 UTC
Could you report Zope-2.13.9 + zope.pagetemplate-3.6.* incompatibility to upstream?

https://bugs.launchpad.net/zope2
Comment 10 Erich Seifert 2011-09-19 17:42:05 UTC
(In reply to comment #9)
> Could you report Zope-2.13.9 + zope.pagetemplate-3.6.* incompatibility to
> upstream?
> 
> https://bugs.launchpad.net/zope2

Yes, done: https://bugs.launchpad.net/zope2/+bug/854060
Comment 11 Arfrever Frehtes Taifersar Arahesis 2011-09-19 18:37:28 UTC
I have backported the patch from http://svn.zope.org/?rev=122788&view=rev to net-zope/zope-pagetemplate-3.6.1-r1.
Please test it:
emerge -1O =net-zope/zope-pagetemplate-3.6.1-r1::progress
Comment 12 Erich Seifert 2011-09-19 20:15:52 UTC
(In reply to comment #11)
> I have backported the patch from http://svn.zope.org/?rev=122788&view=rev to
> net-zope/zope-pagetemplate-3.6.1-r1.
> Please test it:
> emerge -1O =net-zope/zope-pagetemplate-3.6.1-r1::progress

Yes, works like a charm. Thank you for backporting.
Comment 13 Arfrever Frehtes Taifersar Arahesis 2011-09-19 20:39:06 UTC
Dependencies of net-zope/zope now again accept any version of net-zope/zope-pagetemplate.